Added ReCreate. Also added try catch to api eval of rpc method.
[nodemanager.git] / NodeManager.spec
index 458672c..2cb2e32 100644 (file)
@@ -1,14 +1,28 @@
 Summary: PlanetLab Node Manager
 Name: NodeManager
-Version: 0.1
-Release: 1
+Version: 1.5
+Release: 7%{?pldistro:.%{pldistro}}%{?date:.%{date}}
 License: PlanetLab
 Group: System Environment/Daemons
 URL: http://cvs.planet-lab.org/cvs/NodeManager
 Source0: %{name}-%{version}.tar.gz
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 
-Obsoletes: sidewinder
+# Old Node Manager
+Obsoletes: sidewinder, sidewinder-common
+
+# vuseradd, vuserdel
+Requires: vserver-reference
+Requires: util-vserver >= 0.30.208-17
+
+# vserver.py
+Requires: util-vserver-python
+
+# Signed tickets
+Requires: gnupg
+
+# Contact API server
+Requires: curl
 
 # Uses function decorators
 Requires: python >= 2.4
@@ -30,9 +44,27 @@ local operations on slices.
 rm -rf $RPM_BUILD_ROOT
 %{__make} %{?_smp_mflags} install DESTDIR="$RPM_BUILD_ROOT"
 
+install -D -m 755 conf_files.init $RPM_BUILD_ROOT/%{_initrddir}/conf_files
 install -D -m 755 nm.init $RPM_BUILD_ROOT/%{_initrddir}/nm
 install -D -m 644 nm.logrotate $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/nm
 
+%post
+chkconfig --add conf_files
+chkconfig conf_files on
+chkconfig --add nm
+chkconfig nm on
+service nm restart
+
+
+%preun
+# 0 = erase, 1 = upgrade
+if [ $1 -eq 0 ] ; then
+    chkconfig nm off
+    chkconfig --del nm
+    chkconfig conf_files off
+    chkconfig --del conf_files
+fi
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -43,8 +75,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/NodeManager/*
 %{_bindir}/forward_api_calls
 %{_initrddir}/nm
+%{_initrddir}/conf_files
+%{_sysconfdir}/logrotate.d/nm
 
 %changelog
 * Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> - 
 - Initial build.
-