terom@152: #!/usr/bin/python terom@152: terom@152: """ terom@152: pvl.verkko.rrd wsgi development server terom@152: """ terom@152: terom@152: import werkzeug.serving terom@152: terom@152: import pvl.args terom@156: import pvl.rrd.args terom@165: import pvl.web.args terom@152: import pvl.verkko.rrd terom@152: terom@226: from pvl.verkko import __version__ terom@152: import optparse terom@152: import logging; log = logging.getLogger('main') terom@152: terom@152: def parse_argv (argv, doc = __doc__) : terom@152: """ terom@152: Parse command-line argv, returning (options, args). terom@152: """ terom@152: terom@152: prog = argv.pop(0) terom@152: args = argv terom@152: terom@152: # optparse terom@152: parser = optparse.OptionParser( terom@152: prog = prog, terom@152: usage = '%prog: [options] [ [...]]', terom@152: version = __version__, terom@152: description = doc, terom@152: ) terom@152: terom@152: # common terom@152: parser.add_option_group(pvl.args.parser(parser)) terom@156: parser.add_option_group(pvl.rrd.args.parser(parser)) terom@165: parser.add_option_group(pvl.web.args.parser(parser)) terom@164: terom@152: # parse terom@152: options, args = parser.parse_args(args) terom@152: terom@152: # apply terom@152: pvl.args.apply(options) terom@152: terom@152: return options, args terom@152: terom@152: def main (argv) : terom@152: """ terom@152: pvl.verkko wsgi development server. terom@152: """ terom@152: terom@152: # parse cmdline terom@152: options, args = parse_argv(argv, doc=__doc__) terom@152: terom@152: # rrd terom@156: rrd = pvl.rrd.args.apply(options) terom@164: terom@152: # app terom@165: application = pvl.web.args.apply(options, pvl.verkko.rrd.Application, rrd) terom@241: pvl.web.args.main(options, application) terom@152: terom@152: if __name__ == '__main__' : terom@152: import sys terom@152: terom@152: sys.exit(main(sys.argv)) terom@152: terom@152: