Add support for static vserver IDs (needed for putting pl_conf in a slice)
[util-vserver.git] / util-vserver.spec
index b3c44fa..2e337a3 100644 (file)
@@ -1,14 +1,12 @@
 %define name util-vserver
 %define version 0.30
-%define release 6.planetlab%{?date:.%{date}}
+%define release 15.planetlab%{?date:.%{date}}
 
 Vendor: PlanetLab
 Packager: PlanetLab Central <support@planet-lab.org>
 Distribution: PlanetLab 3.0
 URL: http://cvs.planet-lab.org/cvs/util-vserver
 
-%define __chattr       /usr/bin/chattr
-
 Summary:       Linux virtual server utilities
 Name:          %{name}
 Version:       %{version}
@@ -23,7 +21,6 @@ Provides:     vserver = %epoch:%version-%release
 Conflicts:     vserver < %epoch:%version-%release
 Conflicts:     vserver > %epoch:%version-%release
 BuildRequires: e2fsprogs-devel
-Requires(post):        %__chattr
 
 %package linuxconf
 Summary:       Linuxconf administration modules for vservers
@@ -82,25 +79,21 @@ mkdir -p $RPM_BUILD_ROOT/etc/cron.d
 . sysv/vcached.conf
 echo "*/$(($period / 60)) * * * * root %_sbindir/vcached -s -f -l $logfile" > $RPM_BUILD_ROOT/etc/cron.d/vcached
 
+%__make -C python INSTALL_ROOT=$RPM_BUILD_ROOT install
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%pre
-# 1 = install, 2 = upgrade/reinstall
-if [ $1 -eq 2 ] ; then
-    # vcached no longer runs as a daemon
-    [ "`/sbin/runlevel`" = "unknown" ] || service vcached stop || :
-fi
-
 %post
-# vcached no longer runs as a daemon
-chkconfig vcached off
-chkconfig --del vcached
+chkconfig --add vservers
+chkconfig vservers on
+
 if [ ! -f /etc/shells ] || ! grep -q '^/bin/vsh$' /etc/shells ; then
     echo /bin/vsh >> /etc/shells
 fi
-# make sure immutable bit is set on /vservers for safety
-%__chattr +t /vservers || :
+
+# make sure barrier bit is set on /vservers to prevent chroot() escapes
+%_libdir/%name/setattr --barrier /vservers
 
 %postun
 # 0 = erase, 1 = upgrade
@@ -111,7 +104,7 @@ fi
 %preun
 # 0 = erase, 1 = upgrade
 if [ $1 -eq 0 ] ; then
-    [ "`/sbin/runlevel`" = "unknown" ] || service vservers stop
+    [ "$PL_BOOTCD" = "1" ] || service vservers stop
     chkconfig vservers off
     chkconfig --del vservers
 fi
@@ -143,7 +136,55 @@ fi
 %_sbindir/newvserver
 %_mandir/man8/newvserver*
 
+
+
+%package py23
+Summary: Python modules for manipulating vservers
+Group: Applications/System
+Requires: python /usr/lib/util-vserver/util-vserver-vars util-python
+
+%description py23
+Python modules for manipulating vservers.  Provides a superset of the
+functionality of the vserver script (at least will do in the future),
+but more readily accessible from Python code.
+
+%files py23
+%defattr(0644,root,root)
+/usr/lib/python2.3/site-packages/bwlimit.py
+/usr/lib/python2.3/site-packages/bwlimit.pyc
+/usr/lib/python2.3/site-packages/cpulimit.py
+/usr/lib/python2.3/site-packages/cpulimit.pyc
+/usr/lib/python2.3/site-packages/util_vserver_vars.py
+/usr/lib/python2.3/site-packages/vduimpl.so
+/usr/lib/python2.3/site-packages/vserver.py
+/usr/lib/python2.3/site-packages/vserver.pyc
+/usr/lib/python2.3/site-packages/vserverimpl.so
+
+
+
 %changelog
+* Thu Jul 28 2005 Steve Muir <smuir@cs.princeton.edu>
+- add support for static vserver IDs to vuseradd and vuserdel
+
+* Thu Jul 21 2005 Steve Muir <smuir@cs.princeton.edu>
+- add bwlimit and cpulimit modules
+
+* Mon Jun 20 2005 Steve Muir <smuir@cs.princeton.edu>
+- import Marc's vdu implementation
+
+* Wed Jun 15 2005 Steve Muir <smuir@cs.princeton.edu>
+- 'vserver-init start' functionality subsumed by Node Manager
+
+* Thu Jun 02 2005 Marc E. Fiuczynski <mef@cs.princeton.edu>
+- Fixed vlimit command
+
+* Wed May 25 2005 Steve Muir <smuir@cs.princeton.edu>
+- add Python modules for manipulating vservers
+
+* Thu Apr  7 2005 Steve Muir <smuir@cs.princeton.edu>
+- vuserdel changes: don't shutdown vserver, just kill all processes;
+  unmount all mountpoints in vserver before deleting
+
 * Fri Nov 19 2004 Mark Huang <mlhuang@cs.princeton.edu>
 - vcached no longer runs as a daemon
 - do not restart vservers when package is upgraded