X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Monitor.spec;h=91590d20e8b01c93d69658ee300bed2db0611228;hb=0a314bb80c378e576c60e16cdf44c631ea953cd4;hp=9c1c0ca207d8d087377c5bf5363bcb4e4d67781f;hpb=588ff7737562c853de2772f90d83237cd035adb2;p=monitor.git diff --git a/Monitor.spec b/Monitor.spec index 9c1c0ca..91590d2 100644 --- a/Monitor.spec +++ b/Monitor.spec @@ -6,7 +6,7 @@ %define name monitor %define version 3.0 -%define taglevel 4 +%define taglevel 18 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" ) @@ -53,7 +53,10 @@ Group: Applications/System Requires: python Requires: python-setuptools-devel +Requires: python-peak-util-extremes +Requires: TurboGears +Requires: compat-libstdc++-296 Requires: openssh-clients Requires: perl-libwww-perl Requires: perl-IO-Socket-SSL @@ -61,8 +64,8 @@ Requires: MySQL-python Requires: nmap Requires: rt3 -#Requires: python-sqlalchemy -#Requires: python-elixir +Requires: plewww-plekit + #Requires: zabbix-client #Requires: zabbix-gui #Requires: zabbix-server @@ -80,7 +83,7 @@ Requires: python Requires: monitor-server-deps Requires: monitor-pcucontrol Requires: PLCWWW >= 4.2 -Requires: bootcd-planetlab-i386 >= 4.2 +Requires: bootcd-%{pldistro}-%{_arch} >= 4.2 %description server The server side include all python modules and scripts needed to fully @@ -93,6 +96,7 @@ as Zabbix DB. summary: pcu controls for monitor and plcapi group: applications/system requires: python +requires: OpenIPMI-tools %description pcucontrol both monitor and the plcapi use a set of common commands to reboot machines @@ -134,8 +138,11 @@ 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 -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 \ @@ -143,6 +150,7 @@ rsync -a --exclude www --exclude archive-pdb --exclude .svn --exclude CVS \ 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/ echo " * Installing cron job for automated polling" install -D -m 644 monitor-server.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor-server.cron @@ -192,6 +200,8 @@ rm -rf $RPM_BUILD_ROOT %{python_sitearch}/threadpool.pyo %{python_sitearch}/monitor %{_sysconfdir}/plc.d/monitor +%{_sysconfdir}/plc.d/monitor.functions +%{_sysconfdir}/plc.d/zabbix %files client %defattr(-,root,root) @@ -208,16 +218,34 @@ rm -rf $RPM_BUILD_ROOT /%{_initrddir}/monitor-runlevelagent %post server-deps -easy_install -UZ Elixir -easy_install -UZ ElementTree -easy_install -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz -easy_install -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg +#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 +mkdir /usr/share/monitor/.ssh +chmod 700 /usr/share/monitor/.ssh + +if grep 'pam_loginuid.so' /etc/pam.d/crond ; then + sed -i -e 's/^session required pam_loginuid.so/#session required pam_loginuid.so/g' /etc/pam.d/crond +fi # NOTE: add the default xml stuff if it's not already in the default xml config. if ! grep '' /etc/planetlab/default_config.xml ; then sed -i 's|| \n Monitor Service Configuration\n Monitor\n \n \n Enabled\n true\n Enable on this machine.\n \n \n \n \n \n \n \n \n Hostname\n pl-virtual-06.cs.princeton.edu\n The fully qualified hostname.\n \n \n IP Address\n \n The IP address of the monitor server.\n \n \n \n |' /etc/planetlab/default_config.xml fi +if ! grep '' /etc/planetlab/default_config.xml ; then + sed -i 's|| \n Zabbix Configuration\n Zabbix\n \n \n Enabled\n false\n Enable on this machine.\n \n \n Hostname\n localhost.localdomain\n The fully qualified hostname.\n \n \n IP Address\n \n The IP address of the Zabbix server.\n \n \n \n |' /etc/planetlab/default_config.xml +fi +# NOTE: enable monitor by default, since we're installing it. +plc-config --save /etc/planetlab/default_config.xml \ + --category plc_monitor --variable enabled --value true %post server # TODO: this will be nice when we have a web-based service running., such as @@ -244,8 +272,75 @@ chkconfig monitor on %post runlevelagent chkconfig --add monitor-runlevelagent chkconfig monitor-runlevelagent on +if [ "$PL_BOOTCD" != "1" ] ; then + service monitor-runlevelagent restart +fi + %changelog +* Sun Jun 28 2009 Stephen Soltesz - Monitor-3.0-18 +- bug fixes. +- improved templates and views +- cleaned controller code for web +- added IPMI requirement to pcucontrol package. + +* Thu Jun 18 2009 Stephen Soltesz - Monitor-3.0-17 +- added bootmanager log links +- addressed root cause of IntegrityErrors ; big deal +- adjusted templates to accomodate fix for IntegrityErrors +- added session.flush() to bootman.py to write out ActionsRecords +- fixed policy to either pause penalties or apply them ; not both. + +-* Wed Jun 17 2009 Stephen Soltesz - Monitor-3.0-16 +-- Added Rpyc from 1.0 branch. +-- add pcuhistory +-- add setup-agent for password protected keys. +-- other minor improvements. + +* Wed Jun 17 2009 Stephen Soltesz - Monitor-3.0-15 +- automate install +- auto-close tickets + +* Fri Jun 12 2009 Stephen Soltesz - Monitor-3.0-14 +- update web +- update policy +- added statistics dir + +* Mon Jun 08 2009 Stephen Soltesz - Monitor-3.0-13 +- remove plccache from controllers, all lookups from db. +- reformat emailTxt messags +- updated bootstates in bootman.py + +* Tue Jun 02 2009 Stephen Soltesz - Monitor-3.0-12 +- tag of latest changes. +- need to test end to end. + +* Sat May 30 2009 Thierry Parmentelat - Monitor-3.0-11 +- big merge from the 2.0 branch + +* Tue May 26 2009 Thierry Parmentelat - Monitor-3.0-10 +- minor improvements in rendering with sortable tables + +* Tue May 19 2009 Baris Metin - Monitor-3.0-9 + +* Fri May 15 2009 Thierry Parmentelat - Monitor-3.0-8 +- first draft with sortable tables + checkpoint + +* Fri May 15 2009 Baris Metin +- use plekit tables from plewww. +- depend on plewww-plekit + +* Tue May 12 2009 Stephen Soltesz - Monitor-3.0-7 +- make docs a noop +- fix for package name dependency +- correct docs + +* Mon May 04 2009 Stephen Soltesz - Monitor-3.0-6 +- add improved docs to the latest build and tag. + +* Mon May 04 2009 Stephen Soltesz - Monitor-3.0-5 +- add documentation hooks for adding in-line docs like NM and PLCAPI + * Fri May 01 2009 Stephen Soltesz - Monitor-3.0-4 - Rough pass over monitor-3.0 to allow it to work with 4.3 API. - replaced GetNodeNetworks, nodeinterface_ids and using new bootstates