X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fdominate.py;h=449b9595949f5cf830a8a9c130b56b00e7655357;hb=0d69fff35ef45fda573467873ae2f01ca1954650;hp=a6be1b035adc841f35fec7d83f6ac3c8e015e94b;hpb=1f2b6a84e56af6dc38bb8939e96645b8931c1173;p=dak.git diff --git a/dak/dominate.py b/dak/dominate.py index a6be1b03..449b9595 100755 --- a/dak/dominate.py +++ b/dak/dominate.py @@ -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']: