X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=dak%2Fdak.py;h=e424836f750b1a1f683d027ade063de8359ea5f4;hb=6021a91078574c97968d076c0320182a20c33649;hp=19facc5592ef853fe36769720f7c8749d9d48d24;hpb=f1ee050ceee00693a9bea2673431291ac480b8b6;p=dak.git diff --git a/dak/dak.py b/dak/dak.py index 19facc55..e424836f 100755 --- a/dak/dak.py +++ b/dak/dak.py @@ -39,6 +39,7 @@ import daklib.utils from daklib.daklog import Logger from daklib.config import Config +from daklib.dak_exceptions import CantOpenError ################################################################################ @@ -133,6 +134,8 @@ def init(): "Generate statistics"), ("bts-categorize", "Categorize uncategorized bugs filed against ftp.debian.org"), + ("import-known-changes", + "import old changes files into known_changes table"), ("add-user", "Add a user to the archive"), ] @@ -156,7 +159,11 @@ Available commands:""" def main(): """Launch dak functionality.""" - logger = Logger(Config(), 'dak top-level', print_starting=False) + + try: + logger = Logger(Config(), 'dak top-level', print_starting=False) + except CantOpenError: + logger = None functionality = init() modules = [ command for (command, _) in functionality ] @@ -200,13 +207,15 @@ def main(): except KeyboardInterrupt: msg = 'KeyboardInterrupt caught; exiting' print msg - logger.log([msg]) + if logger: + logger.log([msg]) sys.exit(1) except SystemExit: pass except: - for line in traceback.format_exc().split('\n')[:-1]: - logger.log(['exception', line]) + if logger: + for line in traceback.format_exc().split('\n')[:-1]: + logger.log(['exception', line]) raise ################################################################################