]> git.donarmstrong.com Git - dak.git/blobdiff - dak/process_new.py
Reset signal handler to default action in child processes
[dak.git] / dak / process_new.py
index dc279257f77656bc4c867faf06675285bd7b2e9f..c25027dc5f807281c26d7f4d694da927c7c5c127 100755 (executable)
@@ -53,7 +53,8 @@ import contextlib
 import pwd
 import apt_pkg, apt_inst
 import examine_package
-import subprocess
+import daklib.daksubprocess
+from sqlalchemy import or_
 
 from daklib.dbconn import *
 from daklib.queue import *
@@ -121,15 +122,20 @@ class Priority_Completer:
 def takenover_binaries(upload, missing, session):
     rows = []
     binaries = set([x.package for x in upload.binaries])
-    suites = ('unstable','experimental')
     for m in missing:
         if m['type'] != 'dsc':
             binaries.remove(m['package'])
     if binaries:
+        source = upload.binaries[0].source.source
+        suite = upload.target_suite.overridesuite or \
+                    upload.target_suite.suite_name
+        suites = [s[0] for s in session.query(Suite.suite_name).filter \
+                                    (or_(Suite.suite_name == suite,
+                                     Suite.overridesuite == suite)).all()]
         rows = session.query(DBSource.source, DBBinary.package).distinct(). \
                              filter(DBBinary.package.in_(binaries)). \
                              join(DBBinary.source). \
-                             filter(DBSource.source != upload.source.source). \
+                             filter(DBSource.source != source). \
                              join(DBBinary.suites). \
                              filter(Suite.suite_name.in_(suites)). \
                              order_by(DBSource.source, DBBinary.package).all()
@@ -158,7 +164,7 @@ def print_new (upload, missing, indexed, session, file=sys.stdout):
         print >>file, line
     takenover = takenover_binaries(upload, missing, session)
     if takenover:
-        print '\nBINARIES TAKEN OVER'
+        print '\n\nBINARIES TAKEN OVER\n'
         for t in takenover:
             print '%s: %s' % (t[0], t[1])
     notes = get_new_comments(upload.policy_queue, upload.changes.source)
@@ -443,7 +449,7 @@ def run_user_inspect_command(upload, upload_copy):
             changes=changes,
             )
 
-    subprocess.check_call(shell_command, shell=True)
+    daklib.daksubprocess.check_call(shell_command, shell=True)
 
 ################################################################################