aboutsummaryrefslogtreecommitdiff
path: root/db_create.py
diff options
context:
space:
mode:
Diffstat (limited to 'db_create.py')
-rwxr-xr-xdb_create.py80
1 files changed, 0 insertions, 80 deletions
diff --git a/db_create.py b/db_create.py
deleted file mode 100755
index c10e4d43..00000000
--- a/db_create.py
+++ /dev/null
@@ -1,80 +0,0 @@
-#! /usr/bin/env python
-# -*- coding: utf-8 -*-
-
-__author__ = "Cedric Bonhomme"
-__version__ = "$Revision: 0.3 $"
-__date__ = "$Date: 2014/03/16 $"
-__revision__ = "$Date: 2014/04/12 $"
-__copyright__ = "Copyright (c) Cedric Bonhomme"
-__license__ = "AGPLv3"
-
-import os
-import bootstrap
-from flask import g
-
-from pyaggr3g470r.models import User, Role
-from werkzeug import generate_password_hash
-
-from sqlalchemy.engine import reflection
-from sqlalchemy.schema import (
- MetaData,
- Table,
- DropTable,
- ForeignKeyConstraint,
- DropConstraint,
- )
-
-
-def db_DropEverything(db):
- # From http://www.sqlalchemy.org/trac/wiki/UsageRecipes/DropEverything
-
- conn = db.engine.connect()
-
- # the transaction only applies if the DB supports
- # transactional DDL, i.e. Postgresql, MS SQL Server
- trans = conn.begin()
-
- inspector = reflection.Inspector.from_engine(db.engine)
-
- # gather all data first before dropping anything.
- # some DBs lock after things have been dropped in
- # a transaction.
- metadata = MetaData()
-
- tbs = []
- all_fks = []
-
- for table_name in inspector.get_table_names():
- fks = []
- for fk in inspector.get_foreign_keys(table_name):
- if not fk['name']:
- continue
- fks.append(
- ForeignKeyConstraint((), (), name=fk['name'])
- )
- t = Table(table_name, metadata, *fks)
- tbs.append(t)
- all_fks.extend(fks)
-
- for fkc in all_fks:
- conn.execute(DropConstraint(fkc))
-
- for table in tbs:
- conn.execute(DropTable(table))
-
- trans.commit()
-
-db_DropEverything(g.db)
-g.db.create_all()
-
-role_admin = Role(name="admin")
-role_user = Role(name="user")
-
-user1 = User(nickname="admin",
- email=os.environ.get("ADMIN_EMAIL", "root@pyAggr3g470r.localhost"),
- pwdhash=generate_password_hash(os.environ.get("ADMIN_PASSWORD", "password")),
- activation_key="")
-user1.roles.extend([role_admin, role_user])
-
-g.db.session.add(user1)
-g.db.session.commit()
bgstack15