Mercurial > getan
changeset 114:6df408534f3f
Move getan.py to getan/main.py
It should be possible to import the main function from a getan module to
be able to reuse main in different scripts. Also this allows to create a
general script via setup.py.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Mon, 12 Dec 2011 09:26:04 +0100 |
parents | 9d6df74058d7 |
children | 32dad62909c3 |
files | getan.py getan/main.py |
diffstat | 2 files changed, 63 insertions(+), 48 deletions(-) [+] |
line wrap: on
line diff
--- a/getan.py Mon Dec 12 09:22:34 2011 +0100 +++ b/getan.py Mon Dec 12 09:26:04 2011 +0100 @@ -10,52 +10,6 @@ # For details see LICENSE coming with the source of 'getan'. # -import logging -import sys -from optparse import OptionParser - -import getan.config as config -from getan.backend import DEFAULT_DATABASE, Backend -from getan.view import ProjectList, EntryList -from getan.controller import GetanController - -logger = logging.getLogger() - -def main(): +from getan.main import main - usage = "usage: %prog [options] [databasefile (default: " + \ - DEFAULT_DATABASE + ")]" - parser = OptionParser(usage=usage) - parser.add_option("-d", "--debug", action="store_true", dest="debug", - help="Set verbosity to debug") - parser.add_option("-l", "--logfile", dest="logfile", metavar="FILE", - help="Write log information to FILE [default: %default]", - default="getan.log") - (options, args) = parser.parse_args() - logargs = dict() - if options.debug: - logargs["level"] = logging.DEBUG - if options.logfile: - logargs["filename"] = options.logfile - config.initialize(**logargs) - global logger - - if len(args) > 0: - backend = Backend(args[0]) - logging.info("Use database '%s'." % args[0]) - else: - backend = Backend() - logging.info("Use database '%s'." % DEFAULT_DATABASE) - - controller = GetanController(backend, ProjectList, EntryList) - - try: - controller.main() - except KeyboardInterrupt: - pass - finally: - controller.shutdown() - - -if __name__ == '__main__': - main() +main()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/getan/main.py Mon Dec 12 09:26:04 2011 +0100 @@ -0,0 +1,61 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- +# +# (c) 2010 by Ingo Weinzierl <ingo.weinzierl@intevation.de> +# (c) 2011 by Björn Ricks <bjoern.ricks@intevation.de> +# +# A python worklog-alike to log what you have 'getan' (done). +# +# This is Free Software licensed under the terms of GPLv3 or later. +# For details see LICENSE coming with the source of 'getan'. +# + +import logging +import sys +from optparse import OptionParser + +import getan.config as config +from getan.backend import DEFAULT_DATABASE, Backend +from getan.view import ProjectList, EntryList +from getan.controller import GetanController + +logger = logging.getLogger() + +def main(): + + usage = "usage: %prog [options] [databasefile (default: " + \ + DEFAULT_DATABASE + ")]" + parser = OptionParser(usage=usage) + parser.add_option("-d", "--debug", action="store_true", dest="debug", + help="Set verbosity to debug") + parser.add_option("-l", "--logfile", dest="logfile", metavar="FILE", + help="Write log information to FILE [default: %default]", + default="getan.log") + (options, args) = parser.parse_args() + logargs = dict() + if options.debug: + logargs["level"] = logging.DEBUG + if options.logfile: + logargs["filename"] = options.logfile + config.initialize(**logargs) + global logger + + if len(args) > 0: + backend = Backend(args[0]) + logging.info("Use database '%s'." % args[0]) + else: + backend = Backend() + logging.info("Use database '%s'." % DEFAULT_DATABASE) + + controller = GetanController(backend, ProjectList, EntryList) + + try: + controller.main() + except KeyboardInterrupt: + pass + finally: + controller.shutdown() + + +if __name__ == '__main__': + main()