X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Monitor.spec;h=005e66aac07c69b9f12034499fe5273b135e64a6;hb=f67503b49b894823a2ff4916496dceda55e67650;hp=e0a58e73693a6270b289cda6add768460ec9e7ea;hpb=c6cd7998ff200fcb63bf70a172fed2ad5cbd0aab;p=monitor.git diff --git a/Monitor.spec b/Monitor.spec index e0a58e7..005e66a 100644 --- a/Monitor.spec +++ b/Monitor.spec @@ -5,7 +5,7 @@ %define url $URL: svn+ssh://svn.planet-lab.org/svn/monitor/trunk/monitor.spec $ %define name monitor -%define version 1.1 +%define version 3.0 %define taglevel 0 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} @@ -33,6 +33,8 @@ system, syncing the PLC db with the monitoring database, notifying users, interacting with PCU hardware, applying penalties to sites that violate acceptable use. +######################################## CLIENT + %package client Summary: Monitor hooks for a PLC node Group: Applications/System @@ -45,6 +47,7 @@ include configuration setup for the monitoring agent running on the node. It will also include any cron or init scripts needed to perform this kind of maintenance. +######################################## Server %package server Summary: Monitor hooks for the PLC server. Group: Applications/System @@ -71,13 +74,36 @@ The server side include all python modules and scripts needed to fully operation, track, and interact with any third-party monitoring software, such as Zabbix DB. +######################################## PCU Control + +%package pcucontrol +summary: pcu controls for monitor and plcapi +group: applications/system +requires: python + +%description pcucontrol +both monitor and the plcapi use a set of common commands to reboot machines +using their external or internal pcus. this package is a library of several +supported models. + +####################################### RunlevelAgent +%package runlevelagent +summary: the RunlevelAgent that reports node runlevels +group: applications/system +requires: python + +%description runlevelagent +The RunlevelAgent starts as early as possible during boot-up and production +mode to actively report the observed runlevel to PLC and update the +'last_contact' field. + %prep %setup -q %build # NOTE: the build uses g++ cmdamt/ # NOTE: TMPDIR is needed here b/c the tmpfs of the build vserver is too small. -cd cmdamt +cd pcucontrol/models/intelamt export TMPDIR=$PWD/tmp make cd .. @@ -117,6 +143,7 @@ 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 -D -m 755 threadpool.py $RPM_BUILD_ROOT/%{python_sitearch}/threadpool.py touch $RPM_BUILD_ROOT/var/www/cgi-bin/monitor/monitorconfig.php @@ -125,9 +152,15 @@ 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 +#################### RunlevelAgent +install -D -m 755 RunlevelAgent.py $RPM_BUILD_ROOT/usr/bin/RunlevelAgent.py +install -D -m 755 monitor-runlevelagent.init $RPM_BUILD_ROOT/%{_initrddir}/monitor-runlevelagent + + %clean rm -rf $RPM_BUILD_ROOT + %files server %defattr(-,root,root) #%config /usr/share/%{name}/monitorconfig.py @@ -147,18 +180,30 @@ rm -rf $RPM_BUILD_ROOT %{_initrddir}/monitor %{_sysconfdir}/cron.d/monitor +%files pcucontrol +%{python_sitearch}/pcucontrol + +%files runlevelagent +/usr/bin/RunlevelAgent.py +/usr/bin/RunlevelAgent.pyo +/usr/bin/RunlevelAgent.pyc +/%{_initrddir}/monitor-runlevelagent + %post server # 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-server for chroot environments +# 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). # NOTE: generate the python defines from zabbix include files. php /usr/share/%{name}/zabbix/getdefines.php > %{python_sitearch}/monitor/database/zabbixapi/defines.py +# apply patches to zabbix +patch -d /var/www/html/zabbix/ -p0 < /usr/share/%{name}/zabbix/zabbix-auto-login.diff + #chkconfig --add monitor-server #chkconfig monitor-server on @@ -166,7 +211,17 @@ php /usr/share/%{name}/zabbix/getdefines.php > %{python_sitearch}/monitor/databa chkconfig --add monitor chkconfig monitor on +%post runlevelagent +chkconfig --add monitor-runlevelagent +chkconfig monitor-runlevelagent on + %changelog +* Fri Feb 27 2009 Stephen Soltesz - Monitor-2.0-1 +- preparing to make a 2.0 branch for monitor. + +* Mon Jan 05 2009 Stephen Soltesz - Monitor-2.0-0 +- new changes are significantly different, that I'm upping the number for clarity. + * Wed Sep 24 2008 Stephen Soltesz - Monitor-1.0-8 - These are all changes in the latest Monitor code. I will branch this version - next, before making additional large changes. @@ -198,4 +253,4 @@ chkconfig monitor on * Mon Apr 07 2008 Stephen Soltesz - monitor-1.0-0 - initial addition. -%define module_current_branch 1.0 +%define module_current_branch 2.0