[Piuparts-commits] [SCM] piuparts git repository branch, develop, updated. 0.49-94-g72ae6d0

Andreas Beckmann anbe at debian.org
Sun Feb 24 15:33:11 UTC 2013


The following commit has been merged in the develop branch:
commit 4e25f08eccd7c0ce5a759ad4c7abfc20bce21be5
Author: Andreas Beckmann <anbe at debian.org>
Date:   Sat Feb 23 16:42:26 2013 +0100

    p-s: add support for running piuparts under /usr/bin/timeout
    
    timeout (from coreutils) seems to be more able to reliably kill
    hanging piuparts processes than the piuparts-slave internal
    implementation
    
    one reason might be that it will run as root like the piuparts
    process it is managing
    
    handle the return values from timeout accordingly
    
    Signed-off-by: Andreas Beckmann <anbe at debian.org>

diff --git a/debian/changelog b/debian/changelog
index cfdcc13..b5d41b9 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -30,6 +30,7 @@ piuparts (0.50) UNRELEASED; urgency=low
     - Relax package existence checks to allow distupgrading to backports.
     - Fix SIGHUP handling while recycling.
     - Flush and unreserve all sections on interrupt.
+    - Add support for running piuparts under /usr/bin/timeout.
   * piuparts-analyze.py:
     - Add support for magic "$DISTRO/None" versions.
   * piuparts-report.py:
diff --git a/piuparts-slave.py b/piuparts-slave.py
index f8a724b..4ae0051 100644
--- a/piuparts-slave.py
+++ b/piuparts-slave.py
@@ -610,7 +610,11 @@ def run_test_with_timeout(cmd, maxwait, kill_all=True):
             raise
         raise
 
-    return p.returncode,stdout
+    ret = p.returncode
+    if ret in [124, 137]:
+        # process was terminated by the timeout command
+        ret = -ret
+    return ret,stdout
 
 
 def test_package(config, pname, pvers, packages_files):

-- 
piuparts git repository



More information about the Piuparts-commits mailing list