Exemple #1
0
def create_db(create_tables, drop_tables):
    db.connect_db()

    for model in all_models:
        if drop_tables and model.table_exists():
            # TODO: submit PR to peewee to allow passing cascade option to drop_table.
            db.database.execute_sql('DROP TABLE %s CASCADE' % model._meta.db_table)
            #model.drop_table()

        if create_tables:
            model.create_table()

    db.close_db(None)
Exemple #2
0
def create_db(create_tables, drop_tables):
    db.connect_db()

    for model in all_models:
        if drop_tables and model.table_exists():
            # TODO: submit PR to peewee to allow passing cascade option to drop_table.
            db.database.execute_sql('DROP TABLE %s CASCADE' % model._meta.db_table)
            #model.drop_table()

        if create_tables and not model.table_exists():
            model.create_table()

    db.close_db(None)
from playhouse.migrate import Migrator
from redash import db
from redash import models


if __name__ == '__main__':
    db.connect_db()
    migrator = Migrator(db.database)
    with db.database.transaction():
        migrator.add_column(models.Dashboard, models.Dashboard.dashboard_filters_enabled, 'dashboard_filters_enabled')

    db.close_db(None)
Exemple #4
0
import peewee
from playhouse.migrate import Migrator
from redash import db
from redash import models


if __name__ == '__main__':
    db.connect_db()
    migrator = Migrator(db.database)
    
    if not models.Group.table_exists():
        print "Creating groups table..."
        models.Group.create_table()
    
    with db.database.transaction():
        models.Group.insert(name='admin', permissions=['admin'], tables=['*']).execute()
        models.Group.insert(name='api', permissions=['view_query'], tables=['*']).execute()
        models.Group.insert(name='default', permissions=models.Group.DEFAULT_PERMISSIONS, tables=['*']).execute()

        migrator.add_column(models.User, models.User.groups, 'groups')
        
        models.User.update(groups=['admin', 'default']).where(peewee.SQL("is_admin = true")).execute()
        models.User.update(groups=['admin', 'default']).where(peewee.SQL("'admin' = any(permissions)")).execute()
        models.User.update(groups=['default']).where(peewee.SQL("is_admin = false")).execute()

        migrator.drop_column(models.User, 'permissions')
        migrator.drop_column(models.User, 'is_admin')

    db.close_db(None)
Exemple #5
0
 def tearDown(self):
     db.close_db(None)
     redash.models.create_db(False, True)