Merge pull request #1201 from dod-ccpo/reset-reset-db

Adjust script to drop all tables and reset from scratch.
This commit is contained in:
dandds 2019-11-21 15:56:02 -05:00 committed by GitHub
commit e0c58290c9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 8 deletions

0
script/__init__.py Normal file
View File

View File

@ -6,7 +6,9 @@ parent_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
sys.path.append(parent_dir)
import sqlalchemy
from alembic import config as alembic_config
from seed_roles import seed_roles
from atst.database import db
from atst.app import make_config, make_app
@ -17,16 +19,16 @@ def reset_database():
meta = sqlalchemy.MetaData(bind=conn, reflect=True)
trans = conn.begin()
retained_tables = ["alembic_version", "permission_sets"]
for t in meta.sorted_tables:
if str(t) not in retained_tables:
conn.execute("ALTER TABLE {} DISABLE trigger ALL;".format(t))
conn.execute(t.delete())
conn.execute("ALTER TABLE {} ENABLE trigger ALL;".format(t))
# drop all tables
meta.drop_all()
trans.commit()
# rerun the migrations
alembic_config.main(argv=["upgrade", "head"])
# seed the permission sets
seed_roles()
if __name__ == "__main__":
config = make_config({"DISABLE_CRL_CHECK": True, "DEBUG": False})