[copr] bkabrda-workspace: Enable just creating the data dir in manage.py for easier use with alembic (91c40fa)

bkabrda at fedorahosted.org bkabrda at fedorahosted.org
Mon Nov 19 07:44:20 UTC 2012


Repository : http://git.fedorahosted.org/cgit/copr.git

On branch  : bkabrda-workspace

>---------------------------------------------------------------

commit 91c40fa603935b1932ba53e71de71f892c1c9dcb
Author: Bohuslav Kabrda <bkabrda at redhat.com>
Date:   Mon Nov 19 08:34:35 2012 +0100

    Enable just creating the data dir in manage.py for easier use with alembic


>---------------------------------------------------------------

 wsgi/manage.py |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/wsgi/manage.py b/wsgi/manage.py
index 1d4a72a..d032f26 100755
--- a/wsgi/manage.py
+++ b/wsgi/manage.py
@@ -9,18 +9,26 @@ class DBManager(object):
     def __init__(self, db):
         self.db = db
 
-    def create_db(self):
+    def create_sqlite_file(self):
         if app.config['SQLALCHEMY_DATABASE_URI'].startswith('sqlite'):
             # strip sqlite:///
             datadir_name = os.path.dirname(app.config['SQLALCHEMY_DATABASE_URI'][10:])
             if not os.path.exists(datadir_name):
                 os.makedirs(datadir_name)
+
+    def create_db(self):
+        self.create_sqlite_file()
         self.db.create_all()
 
     def delete_db(self):
         self.db.drop_all()
 
 parser = argparse.ArgumentParser(description = 'Manage the app')
+parser.add_argument('-s', '--create-sqlite-file',
+                    required = False,
+                    help = 'Create the sqlite DB file (not the tables). User for alembic, the -c does this automatically.',
+                    action = 'store_true')
+
 parser.add_argument('-c', '--create-db',
                     required = False,
                     help = 'Create the DB scheme',
@@ -34,7 +42,9 @@ parser.add_argument('-d', '--delete-db',
 args = parser.parse_args()
 
 manager = DBManager(db)
-if args.create_db:
+if args.create_sqlite_file:
+    manager.create_sqlite_file()
+elif args.create_db:
     manager.create_db()
 elif args.delete_db:
     manager.delete_db()



More information about the copr-devel mailing list