]> git.decadent.org.uk Git - dak.git/blobdiff - dak/dominate.py
Merge remote-tracking branch 'nthykier/auto-decruft'
[dak.git] / dak / dominate.py
index a6be1b035adc841f35fec7d83f6ac3c8e015e94b..449b9595949f5cf830a8a9c130b56b00e7655357 100755 (executable)
@@ -89,7 +89,10 @@ def deleteAssociations(table, idList, session):
             FROM %s
             WHERE id = :id
     """ % table
-    session.execute(query, [{'id': id} for id in idList])
+    params = [{'id': id} for id in idList]
+    if len(params) == 0:
+        return
+    session.execute(query, params)
 
 def doDaDoDa(suite, session):
     # keep this part disabled because it is too dangerous
@@ -141,6 +144,12 @@ def main():
     session = DBConn().session()
     for suite_name in utils.split_args(Options['Suite']):
         suite = session.query(Suite).filter_by(suite_name = suite_name).one()
+
+        # Skip policy queues. We don't want to remove obsolete packages from those.
+        policy_queue = session.query(PolicyQueue).filter_by(suite=suite).first()
+        if policy_queue is not None:
+            continue
+
         if not suite.untouchable or Options['Force']:
             doDaDoDa(suite.suite_id, session)
     if Options['No-Action']: