|
1 #!/usr/bin/python |
|
2 |
|
3 """ |
|
4 pvl.verkko.rrd wsgi development server |
|
5 """ |
|
6 |
|
7 import werkzeug.serving |
|
8 |
|
9 from pvl import __version__ |
|
10 import pvl.args |
|
11 import pvl.verkko.rrd |
|
12 |
|
13 import optparse |
|
14 import logging; log = logging.getLogger('main') |
|
15 |
|
16 def parse_argv (argv, doc = __doc__) : |
|
17 """ |
|
18 Parse command-line argv, returning (options, args). |
|
19 """ |
|
20 |
|
21 prog = argv.pop(0) |
|
22 args = argv |
|
23 |
|
24 # optparse |
|
25 parser = optparse.OptionParser( |
|
26 prog = prog, |
|
27 usage = '%prog: [options] [<user> [...]]', |
|
28 version = __version__, |
|
29 description = doc, |
|
30 ) |
|
31 |
|
32 # common |
|
33 parser.add_option_group(pvl.args.parser(parser)) |
|
34 |
|
35 parser.add_option('--rrd', metavar='PATH', |
|
36 help="Path to RRD files") |
|
37 |
|
38 # parse |
|
39 options, args = parser.parse_args(args) |
|
40 |
|
41 # apply |
|
42 pvl.args.apply(options) |
|
43 |
|
44 return options, args |
|
45 |
|
46 def main (argv) : |
|
47 """ |
|
48 pvl.verkko wsgi development server. |
|
49 """ |
|
50 |
|
51 # parse cmdline |
|
52 options, args = parse_argv(argv, doc=__doc__) |
|
53 |
|
54 # rrd |
|
55 rrd = pvl.verkko.rrd.RRDDatabase(options.rrd) |
|
56 |
|
57 # app |
|
58 application = pvl.verkko.rrd.Application(rrd) |
|
59 |
|
60 # wsgi wrapper |
|
61 werkzeug.serving.run_simple('0.0.0.0', 8080, application, |
|
62 #use_reloader = True, |
|
63 use_debugger = (options.loglevel == logging.DEBUG), |
|
64 static_files = { |
|
65 '/static': 'static', |
|
66 }, |
|
67 ) |
|
68 |
|
69 if __name__ == '__main__' : |
|
70 import sys |
|
71 |
|
72 sys.exit(main(sys.argv)) |
|
73 |
|
74 |