X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Monitor.spec;h=f9068c424c6e94827e053404494dff069e894f50;hb=4db453d97b96ddd3c08e6123d4efe368a58851b8;hp=cc9098441bb778abd04458527d749e0f10c56ce9;hpb=c11871842581f245ea6f403483766b8f2653a875;p=monitor.git diff --git a/Monitor.spec b/Monitor.spec index cc90984..f9068c4 100644 --- a/Monitor.spec +++ b/Monitor.spec @@ -5,8 +5,9 @@ %define url $URL: svn+ssh://svn.planet-lab.org/svn/monitor/trunk/monitor.spec $ %define name monitor +# keep this version in sync with monitor/monitor_version.py %define version 3.0 -%define taglevel 22 +%define taglevel 26 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) @@ -24,6 +25,9 @@ Packager: PlanetLab Central Distribution: PlanetLab %{plrelease} URL: %(echo %{url} | cut -d ' ' -f 2) +BuildRequires: python-setuptools-devel + + Summary: Monitor account initialization for the root image. Group: Applications/System @@ -52,9 +56,7 @@ Summary: Monitor hooks for the PLC server. Group: Applications/System Requires: python -Requires: python-setuptools-devel Requires: python-peak-util-extremes -Requires: TurboGears Requires: compat-libstdc++-296 Requires: openssh-clients @@ -129,9 +131,9 @@ cd .. %install rm -rf $RPM_BUILD_ROOT #################### CLIENT -install -D -m 755 monitor-client.init $RPM_BUILD_ROOT/%{_initrddir}/monitor -install -D -m 644 monitor.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor -install -D -m 755 timeout.pl $RPM_BUILD_ROOT/usr/bin/timeout.pl +#install -D -m 755 monitor-client.init $RPM_BUILD_ROOT/%{_initrddir}/monitor +#install -D -m 644 monitor.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor +install -D -m 755 tools/timeout.pl $RPM_BUILD_ROOT/usr/bin/timeout.pl #################### SERVER @@ -140,38 +142,50 @@ install -d $RPM_BUILD_ROOT/data/var/lib/%{name} install -d $RPM_BUILD_ROOT/data/var/lib/%{name}/archive-pdb install -d $RPM_BUILD_ROOT/var/lib/%{name} install -d $RPM_BUILD_ROOT/var/lib/%{name}/archive-pdb -install -d $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/ install -d $RPM_BUILD_ROOT/var/www/html/monitorlog/ +install -d $RPM_BUILD_ROOT/etc/httpd/conf.d/ +install -d $RPM_BUILD_ROOT/%{python_sitearch}/monitor +# pack monitor's dependencies in RPM to make it easier to deploy. +export TMPDIR=/var/tmp/ +export PYTHONPATH=$PYTHONPATH:$RPM_BUILD_ROOT/%{python_sitearch}/ +easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg +easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz +easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ Elixir +rm -rf $RPM_BUILD_ROOT/%{python_sitearch}/site.py* + +# plc.d scripts install -D -m 644 monitor.functions $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/monitor.functions install -D -m 755 monitor-server.init $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/monitor install -D -m 755 zabbix/monitor-zabbix.init $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/zabbix -echo " * Installing core scripts" -rsync -a --exclude www --exclude archive-pdb --exclude .svn --exclude CVS \ - ./ $RPM_BUILD_ROOT/usr/share/%{name}/ +# cron job for automated polling +install -D -m 644 monitor-server.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor-server.cron -echo " * Installing web pages" -rsync -a www/ $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/ -rsync -a log/ $RPM_BUILD_ROOT/var/www/html/monitorlog/ +# apache configuration +install -D -m 644 web/monitorweb-httpd.conf $RPM_BUILD_ROOT/etc/httpd/conf.d/ -echo " * Installing cron job for automated polling" -install -D -m 644 monitor-server.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor-server.cron -echo " * TODO: Setting up Monitor account in local MyPLC" -# TODO: +# we'll install monitor and pcucontrol in site-packages +# install rest to /usr/share/monitor +rsync -a --exclude archive-pdb --exclude .svn --exclude CVS \ + --exclude monitor/ \ + --exclude pcucontol/ \ + ./ $RPM_BUILD_ROOT/usr/share/%{name}/ -install -d $RPM_BUILD_ROOT/%{python_sitearch}/monitor -install -d -D -m 755 monitor $RPM_BUILD_ROOT/%{python_sitearch}/monitor -# TODO: need a much better way to do this. -rsync -a monitor/ $RPM_BUILD_ROOT/%{python_sitearch}/monitor/ -#for file in __init__.py database.py config.py ; do -# install -D -m 644 monitor/$file $RPM_BUILD_ROOT/%{python_sitearch}/monitor/$file -#done -rsync -a pcucontrol/ $RPM_BUILD_ROOT/%{python_sitearch}/pcucontrol/ +# install monitor python package +rsync -a --exclude .svn ./monitor/ $RPM_BUILD_ROOT/%{python_sitearch}/monitor/ + +# and pcucontrol +rsync -a --exclude .svn ./pcucontrol/ $RPM_BUILD_ROOT/%{python_sitearch}/pcucontrol/ + +# install third-party module to site-packages install -D -m 755 threadpool.py $RPM_BUILD_ROOT/%{python_sitearch}/threadpool.py -touch $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/monitorconfig.php -chmod 777 $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/monitorconfig.php +# TODO: +echo " * TODO: Setting up Monitor account in local MyPLC" + +#touch $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/monitorconfig.php +#chmod 777 $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/monitorconfig.php #install -D -m 755 monitor-default.conf $RPM_BUILD_ROOT/etc/monitor.conf #cp $RPM_BUILD_ROOT/usr/share/%{name}/monitorconfig-default.py $RPM_BUILD_ROOT/usr/share/%{name}/monitorconfig.py @@ -196,20 +210,22 @@ rm -rf $RPM_BUILD_ROOT #%config /etc/monitor.conf /usr/share/%{name} /var/lib/%{name} -/var/www/cgi-bin/monitor +#/var/www/cgi-bin/monitor %{_sysconfdir}/cron.d/monitor-server.cron -%{python_sitearch}/threadpool.py -%{python_sitearch}/threadpool.pyc -%{python_sitearch}/threadpool.pyo +%{python_sitearch}/threadpool.py* %{python_sitearch}/monitor +%{python_sitearch}/*.egg/ +%{python_sitearch}/easy-install.pth +%{python_sitearch}/tg-admin %{_sysconfdir}/plc.d/monitor %{_sysconfdir}/plc.d/monitor.functions %{_sysconfdir}/plc.d/zabbix +%{_sysconfdir}/httpd/conf.d %files client %defattr(-,root,root) -%{_initrddir}/monitor -%{_sysconfdir}/cron.d/monitor +#%{_initrddir}/monitor +#%{_sysconfdir}/cron.d/monitor /usr/bin/timeout.pl %files pcucontrol @@ -222,14 +238,6 @@ rm -rf $RPM_BUILD_ROOT /%{_initrddir}/monitor-runlevelagent %post server-deps -#easy_install --build-directory /var/tmp -UZ ElementTree -##easy_install --build-directory /var/tmp -UZ http://pypi.python.org/packages/2.5/E/Extremes/Extremes-1.1-py2.5.egg - - -## TODO: something is bad wrong with this approach. -easy_install --build-directory /var/tmp -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg -easy_install --build-directory /var/tmp -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz -easy_install --build-directory /var/tmp -UZ Elixir # crazy openssl libs for racadm binary ln -s /lib/libssl.so.0.9.8b /usr/lib/libssl.so.2 @@ -276,7 +284,6 @@ fi # TODO: this will be nice when we have a web-based service running., such as # an API server or so on. # TODO: create real monitorconfig.py from monitorconfig-default.py -# TODO: create monitorconfig.php using phpconfig.py # TODO: create symlink in /var/lib/monitor for chroot environments # TODO: update the content of automate_pl03.sh # TODO: Use the installed version of bootcd to create custom boot images. ( or, use the api now). @@ -303,6 +310,26 @@ fi %changelog +* Wed Dec 16 2009 Baris Metin - Monitor-3.0-26 +- to many changes, but mostly moved stuff around. there are some small fixes here and there. + +* Fri Nov 20 2009 Stephen Soltesz - Monitor-3.0-25 +- add option for site status to include both node & pcu status +- improve ticket handling +- template gadget.xml for a site-specific google-gadget summary + +* Thu Oct 22 2009 Baris Metin - Monitor-3.0-24 +- - add install_date + +* Mon Oct 19 2009 Baris Metin - Monitor-3.0-23 +- - remove monitor-client.cron +- - remove unused monitor-client init script +- - fix UP/DOWN summary on nodes page. +- - make node page display all nodes by default +- - add boot_server field +- - add myops_ssh_key to the keychain +- - use ext_consortium_id to distinguish pending sites. + * Fri Oct 09 2009 Baris Metin - Monitor-3.0-22 - show/hide advance query form.