X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fimport_known_changes.py;h=7b182d6f199123908f02b5406ea9ae580ea14c3c;hb=27e00376e81d1c37ff327ee0d39670b266418869;hp=b3f8e8a8359b2c7ac991862d174550e84222a3f7;hpb=f0bfd37e7286156598d79b53501ebe2000bb7924;p=dak.git diff --git a/dak/import_known_changes.py b/dak/import_known_changes.py index b3f8e8a8..7b182d6f 100755 --- a/dak/import_known_changes.py +++ b/dak/import_known_changes.py @@ -32,7 +32,7 @@ import sys import os import logging import threading -from daklib.dbconn import DBConn, get_dbchange +from daklib.dbconn import DBConn, get_dbchange, get_policy_queue from daklib.config import Config import apt_pkg from daklib.dak_exceptions import DBUpdateError, InvalidDscError, ChangesUnicodeError @@ -200,8 +200,18 @@ class ChangesGenerator(threading.Thread): def run(self): cnf = Config() count = 1 - for directory in [ "Byhand", "Done", "New", "ProposedUpdates", "OldProposedUpdates" ]: - checkdir = cnf["Dir::Queue::%s" % (directory) ] + + dirs = [] + dirs.append(cnf['Dir::Done']) + + for queue_name in [ "byhand", "new", "proposedupdates", "oldproposedupdates" ]: + queue = get_policy_queue(queue_name) + if queue: + dirs.append(os.path.abspath(queue.path)) + else: + warn("Could not find queue %s in database" % queue_name) + + for checkdir in dirs: if os.path.exists(checkdir): print "Looking into %s" % (checkdir) @@ -259,7 +269,7 @@ class ImportThread(threading.Thread): changes.add_known_changes(to_import.dirpath, session=self.session) self.session.commit() - except InvalidDscError, line: + except InvalidDscError as line: warn("syntax error in .dsc file '%s', line %s." % (f, line)) except ChangesUnicodeError: @@ -288,7 +298,7 @@ class ImportKnownChanges(object): except KeyboardInterrupt: print("Caught C-c; terminating.") - utils.warn("Caught C-c; terminating.") + warn("Caught C-c; terminating.") self.plsDie() def plsDie(self):