- sudo: make sure the original user can remove the generated files
[vserver-reference.git] / vserver-reference.spec
index ea0c859..379c915 100644 (file)
@@ -20,6 +20,8 @@ Requires: util-vserver
 AutoReqProv: no
 BuildRequires: e2fsprogs, yum
 
+%define debug_package %{nil}
+
 %description
 This package creates the virtual server (VServer) reference image used
 as the installation base for new PlanetLab slivers.
@@ -40,6 +42,9 @@ fi
 %build
 
 %install
+# Running as root
+export PATH="$PATH:/sbin:/usr/sbin"
+
 # Clean up
 if grep -q %{installroot}/proc /proc/mounts ; then
     umount %{installroot}/proc
@@ -131,6 +136,9 @@ if grep -q %{installroot}/dev/pts /proc/mounts ; then
 fi
 
 %clean
+# Running as root
+export PATH="$PATH:/sbin:/usr/sbin"
+
 # Clean up
 if grep -q %{installroot}/proc /proc/mounts ; then
     umount %{installroot}/proc
@@ -141,6 +149,22 @@ fi
 chattr -R -i $RPM_BUILD_ROOT
 rm -rf $RPM_BUILD_ROOT
 
+# Make sure the original user can remove the generated files
+if [ -n "$SUDO_UID" ] ; then
+    chown -R $SUDO_UID.$SUDO_GID .
+    for i in \
+       %{_topdir}/BUILD \
+       %{_topdir}/RPMS/noarch/%{name}-%{version}-%{release}.noarch.rpm \
+       %{_topdir}/RPMS/noarch \
+       %{_topdir}/RPMS/ \
+       %{_topdir}/SRPMS/%{name}-%{version}-%{release}.src.rpm \
+       %{_topdir}/SRPMS/ ; do
+      if [ -e $i ] ; then
+         chown $SUDO_UID.$SUDO_GID $i
+      fi
+    done
+fi
+
 %post
 # Copy configuration files from host to reference image
 for file in /etc/hosts /etc/resolv.conf /etc/yum.conf ; do