bin/wsgi-dev.py
changeset 6 72c73df76db2
parent 0 b28a1681e79b
child 26 04bf578d358a
--- a/bin/wsgi-dev.py	Wed Dec 22 02:51:41 2010 +0200
+++ b/bin/wsgi-dev.py	Wed Dec 22 02:52:25 2010 +0200
@@ -6,7 +6,9 @@
 import werkzeug
 
 # app import
-from svv import wsgi
+import svv.wsgi
+import svv.database
+import svv.application
 
 import optparse, logging
 
@@ -15,9 +17,13 @@
     parser = optparse.OptionParser()
     parser.add_option('-q', '--quiet', action='store_true', help='More output')
     parser.add_option('-v', '--verbose', action='store_true', help='More output')
+
     parser.add_option('-p', '--port', type='int', help='Local port to run on', default=8080, metavar='PORT')
     parser.add_option('-B', '--bind', help="Local address to listen on", default='localhost', metavar='HOST')
 
+    parser.add_option('-d', '--database', help="Database connection URI", metavar='URL')
+    parser.add_option(      '--init-database', action='store_true', help="Initialize database (CREATE)")
+
     (options, args) = parser.parse_args()
     
     if options.quiet :
@@ -37,12 +43,22 @@
 
     logging.basicConfig(format="[%(levelname)5s] %(funcName)25s : %(message)s", level=level)
 
-    app = wsgi.WSGIApp(
-            # params
+    # app state
+    application = svv.application.Application(
+            options.database,
+    )
+
+    # init?
+    if options.init_database :
+        application.create_tables()
+
+    # frontend
+    wsgiapp = svv.wsgi.WSGIApp(
+            application
     )
 
     # run
-    werkzeug.run_simple(bind, port, app, use_reloader=True, use_debugger=True, 
+    werkzeug.run_simple(bind, port, wsgiapp, use_reloader=True, use_debugger=True, 
             static_files    = {
                 # static resources mounted off app /static
                 '/static':  'static/',