%define name monitor
# keep this version in sync with monitor/monitor_version.py
%define version 3.1
-%define taglevel 0
+%define taglevel 1
%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
%global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" )
Requires: mysql-devel
Requires: mysql-libs
Requires: mailx
+Requires: sendmail
+Requires: php
+Requires: httpd
+Requires: cronie
Requires: nagios
Requires: nagios-common
Requires: nagios-devel
Requires: ndoutils
Requires: ndoutils-mysql
+Requires: rt3
+
%description nagios
Scripts and setup necessary to integrate and monitor PLC with Nagios.
Requires: nmap
Requires: nc
Requires: rt3
+Requires: traceroute
Requires: plewww-plekit
+Requires: pcucontrol
+Requires: TurboGears
#Requires: zabbix-client
#Requires: zabbix-gui
Requires: monitor-server-deps
Requires: PLCWWW >= 4.2
-Requires: bootcd-%{pldistro}-%{distroname}-%{_arch} >= 5.0
-Requires: pcucontrol
+# NOTE: removed b/c 'distroname' gets corrupted during build process.
+# Requires: bootcd-%{pldistro}-%{distroname}-%{_arch} >= 5.0
%description server
The server side include all python modules and scripts needed to fully
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
+
install -D -m 755 nagios/monitor-nagios.init $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/monitor-nagios
+install -D -m 644 nagios/monitor-nagios.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor-nagios.cron
# cron job for automated polling
install -D -m 644 monitor-server.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/monitor-server.cron
# install monitor python package
rsync -a --exclude .svn ./monitor/ $RPM_BUILD_ROOT/%{python_sitearch}/monitor/
+install -D -m 644 monitor/wrapper/plc.py $RPM_BUILD_ROOT/usr/share/%{name}/nagios/
+install -D -m 644 monitor/generic.py $RPM_BUILD_ROOT/usr/share/%{name}/nagios/
+
# install third-party module to site-packages
install -D -m 755 threadpool.py $RPM_BUILD_ROOT/%{python_sitearch}/threadpool.py
# 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
%defattr(-,root,root)
%{_sysconfdir}/plc.d/monitor-nagios
/usr/share/%{name}/nagios
+%{_sysconfdir}/cron.d/monitor-nagios.cron
%files server
%defattr(-,root,root)
# by fedora 8 (our current deployment) doesn't match the version
# requirements.
export TMPDIR=/var/tmp/
-easy_install -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg
-easy_install -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz
-easy_install -UZ Elixir
+#easy_install -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg
+#easy_install -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz
+#easy_install -UZ Elixir
# crazy openssl libs for racadm binary
ln -s /lib/libssl.so.0.9.8b /usr/lib/libssl.so.2
--save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
fi
-# zabbix:
-if ! plc-config --category plc_zabbix --variable enabled ; then
- plc-config --category plc_zabbix --variable enabled --value false \
- --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
-fi
-if ! plc-config --category plc_zabbix --variable host ; then
- plc-config --category plc_zabbix --variable host --value localhost.localdomain \
- --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
-fi
-if ! plc-config --category plc_zabbix --variable ip ; then
- plc-config --category plc_zabbix --variable ip --value "" \
- --save /etc/planetlab/configs/site.xml /etc/planetlab/configs/site.xml
-fi
-
%post nagios
# TODO: do as much as possible to get the host setup and running.
-chkconfig --add monitor-nagios
-chkconfig monitor-nagios on
+#chkconfig --add monitor-nagios
+#chkconfig monitor-nagios on
chkconfig mysqld on
%post server
chkconfig monitor on
%post runlevelagent
-chkconfig --add monitor-runlevelagent
-chkconfig monitor-runlevelagent on
-if [ "$PL_BOOTCD" != "1" ] ; then
- service monitor-runlevelagent restart
+if [ -f /etc/planetlab/node_id ] ; then
+ chkconfig --add monitor-runlevelagent
+ chkconfig monitor-runlevelagent on
+ if [ "$PL_BOOTCD" != "1" ] ; then
+ service monitor-runlevelagent restart
+ fi
fi
%changelog
+* Fri May 06 2011 s s <soltesz@cs.princeton.edu> - monitor-3.1-1
+- last tag before some more major changes
+
* Thu May 20 2010 Stephen Soltesz <soltesz@cs.princeton.edu> - Monitor-3.0-35
- Add CSV link on Advanced query
- Preparing to branch