[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.44-679-g25460c0

Andreas Beckmann debian at abeckmann.de
Tue Jun 5 07:42:25 UTC 2012


The following commit has been merged in the develop branch:
commit 25460c022a1d062d9024e4bb5f2b69c7c84fb9a9
Author: Andreas Beckmann <debian at abeckmann.de>
Date:   Tue Jun 5 00:03:41 2012 +0200

    p: terminate running processes before removing the chroot
    
    Ensure there is nothing running that might prevent removal of the chroot.
    In case of panic() check_for_no_processes() was not called.
    
    Signed-off-by: Andreas Beckmann <debian at abeckmann.de>

diff --git a/debian/changelog b/debian/changelog
index 9212e15..2c089c9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -53,6 +53,8 @@ piuparts (0.45) UNRELEASED; urgency=low
       + /var/spool/powerdns/                    (Closes: #531134, #531135)
     - Implement a timeout for commands being run in the chroot.
     - Set time limit to 30 minutes per command. (Closes: #654423)
+    - Terminate all processes running inside the chroot before removing the
+      chroot; also in case piuparts aborts due to an error.
   * piuparts.conf:
     - Make master-command a [global] instead of a [section] setting.
       The section name will be given as an argument to this command.
diff --git a/piuparts.py b/piuparts.py
index 46bf41e..8b5abd8 100644
--- a/piuparts.py
+++ b/piuparts.py
@@ -783,8 +783,9 @@ class Chroot:
     def remove(self):
         """Remove a chroot and all its contents."""
         if not settings.keep_tmpdir and os.path.exists(self.name):
-            self.unmount_proc()
+            self.terminate_running_processes()
             self.unmount_selinux()
+            self.unmount_proc()
             if settings.lvm_volume:
                 logging.debug('Unmounting and removing LVM snapshot %s' % self.lvm_snapshot_name)
                 run(['umount', self.name])

-- 
piuparts git repository



More information about the Piuparts-commits mailing list