Tagging module VserverReference - VserverReference-4.2-3
[sliceimage.git] / vserver-reference.spec
index aaf961b..6815d20 100644 (file)
@@ -3,13 +3,17 @@
 #
 %define url $URL$
 
 #
 %define url $URL$
 
+%define slicefamily %{pldistro}-%{distroname}-%{_arch}
+
 %define name vserver
 %define version 4.2
 %define name vserver
 %define version 4.2
-%define taglevel 2
+%define taglevel 3
 
 
-%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
+# pldistro already in the rpm name
+#%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
+%define release %{taglevel}%{?date:.%{date}}
 
 
-Summary: VServer reference image
+Summary: VServer reference image for slice family %{slicefamily}
 Name: %{name}
 Version: %{version}
 Release: %{release}
 Name: %{name}
 Version: %{version}
 Release: %{release}
@@ -28,24 +32,24 @@ URL: %(echo %{url} | cut -d ' ' -f 2)
 %description
 This package does not really exist.
 
 %description
 This package does not really exist.
 
-%package reference
+%package %{slicefamily}
 Summary: VServer reference image
 Group: Applications/System
 AutoReqProv: no
 Requires: util-vserver, e2fsprogs, yum
 Requires(pre): /bin/sh, coreutils
 
 Summary: VServer reference image
 Group: Applications/System
 AutoReqProv: no
 Requires: util-vserver, e2fsprogs, yum
 Requires(pre): /bin/sh, coreutils
 
-%description reference
+%description %{slicefamily}
 This package creates the virtual server (VServer) reference image used
 as the installation base for new PlanetLab slivers.
 
 This package creates the virtual server (VServer) reference image used
 as the installation base for new PlanetLab slivers.
 
-%package system-packages
+%package systemslices-%{slicefamily}
 Summary: System slice packages
 Group: Applications/System
 Summary: System slice packages
 Group: Applications/System
-Requires: vserver-reference >= %{version}-%{release}
+Requires: vserver-%{slicefamily} >= %{version}-%{release}
 AutoReqProv: no
 
 AutoReqProv: no
 
-%description system-packages
+%description systemslices-%{slicefamily}
 This package installs the RPMS necessary to create system ("root
 resource") slices from the virtual server (VServer) reference image.
 
 This package installs the RPMS necessary to create system ("root
 resource") slices from the virtual server (VServer) reference image.
 
@@ -54,7 +58,7 @@ resource") slices from the virtual server (VServer) reference image.
 
 %build
 pushd VserverReference
 
 %build
 pushd VserverReference
-./build.sh %{pldistro}
+./build.sh %{pldistro} %{slicefamily}
 popd
 
 %install
 popd
 
 %install
@@ -81,20 +85,20 @@ if [ -n "$SUDO_USER" ] ; then
     chown -h -R $SUDO_USER %{_rpmdir}/%{_arch}
 fi
 
     chown -h -R $SUDO_USER %{_rpmdir}/%{_arch}
 fi
 
-%files reference
+%files %{slicefamily}
 %defattr(-,root,root)
 %{_initrddir}/vserver-reference
 %{_sysconfdir}/cron.d/vserver-reference
 %{_sysconfdir}/logrotate.d/vserver-reference
 %defattr(-,root,root)
 %{_initrddir}/vserver-reference
 %{_sysconfdir}/cron.d/vserver-reference
 %{_sysconfdir}/logrotate.d/vserver-reference
-/vservers/.vref/default
+/vservers/.vref/%{slicefamily}
 
 
-%files system-packages
+%files systemslices-%{slicefamily}
 %defattr(-,root,root)
 /vservers/.vstub
 
 %define vcached_pid /var/run/vcached.pid
 
 %defattr(-,root,root)
 /vservers/.vstub
 
 %define vcached_pid /var/run/vcached.pid
 
-%pre reference
+%pre %{slicefamily}
 # Stop vcached
 if [ -r %{vcached_pid} ] ; then
     kill $(cat %{vcached_pid})
 # Stop vcached
 if [ -r %{vcached_pid} ] ; then
     kill $(cat %{vcached_pid})
@@ -113,9 +117,11 @@ fi
 # Allow vcached to run again
 rm -f %{vcached_pid}
 
 # Allow vcached to run again
 rm -f %{vcached_pid}
 
-%post reference
+%post %{slicefamily}
 chkconfig --add vserver-reference
 chkconfig vserver-reference on
 chkconfig --add vserver-reference
 chkconfig vserver-reference on
+# store the default for nodemanager
+[ -f /etc/planetlab/slicefamily ] || echo %{slicefamily} > /etc/planetlab/slicefamily
 [ "$PL_BOOTCD" = "1" ] || service vserver-reference start
 
 # Randomize daily run time
 [ "$PL_BOOTCD" = "1" ] || service vserver-reference start
 
 # Randomize daily run time
@@ -124,6 +130,12 @@ H=$((24 * $RANDOM / 32768))
 sed -i -e "s/@M@/$M/" -e "s/@H@/$H/" %{_sysconfdir}/cron.d/vserver-reference
 
 %changelog
 sed -i -e "s/@M@/$M/" -e "s/@H@/$H/" %{_sysconfdir}/cron.d/vserver-reference
 
 %changelog
+* Wed Mar 26 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-2 VserverReference-4.2-3
+- a single node can now install several instances of this package
+- package name contains slicefamily - <pldistro>-<fcdistro>-<arch>
+- setattr --iunlink or --~iunlink appropriately (uses /proc/virtual/info)
+- does not copy yum.conf from host anymore
+
 * Fri Feb 15 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-4.2-1 vserver-4.2-2
 - vserver image to properly use links rather than copies
 
 * Fri Feb 15 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-4.2-1 vserver-4.2-2
 - vserver image to properly use links rather than copies