示例#1
0
        except peewee.ProgrammingError:
            print "Failed to create user_id column -- assuming it already exists"

    print "Creating user for all queries and dashboards..."
    for obj in itertools.chain(models.Query.select(),
                               models.Dashboard.select()):
        # Some old databases might have queries with empty string as user email:
        email = obj.user_email or settings.ADMINS[0]
        email = email.split(',')[0]

        print ".. {} , {}, {}".format(type(obj), obj.id, email)

        try:
            user = models.User.get(models.User.email == email)
        except models.User.DoesNotExist:
            is_admin = email in settings.ADMINS
            user = models.User.create(email=email,
                                      name=email,
                                      is_admin=is_admin)

        obj.user = user
        obj.save()

    print "Set user_id to non null..."
    with db.database.transaction():
        migrator.set_nullable(models.Query, models.Query.user, False)
        migrator.set_nullable(models.Dashboard, models.Dashboard.user, False)
        migrator.set_nullable(models.Query, models.Query.user_email, True)
        migrator.set_nullable(models.Dashboard, models.Dashboard.user_email,
                              True)
示例#2
0
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.Widget, models.Widget.text, 'text')
        migrator.set_nullable(models.Widget, models.Widget.visualization, True)

    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.Widget, models.Widget.text, 'text')
        migrator.set_nullable(models.Widget, models.Widget.visualization, True)

    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.set_nullable(models.Widget, models.Widget.query_id, True)
        migrator.set_nullable(models.Widget, models.Widget.type, True)

    db.close_db(None)
    else:
        default_data_source = models.DataSource.select().first()

    migrator = Migrator(db.database)
    models.Query.data_source.null = True
    models.QueryResult.data_source.null = True
    try:
        with db.database.transaction():
            migrator.add_column(models.Query, models.Query.data_source, "data_source_id")
    except peewee.ProgrammingError:
        print "Failed to create data_source_id column -- assuming it already exists"

    try:
        with db.database.transaction():
            migrator.add_column(models.QueryResult, models.QueryResult.data_source, "data_source_id")
    except peewee.ProgrammingError:
        print "Failed to create data_source_id column -- assuming it already exists"

    print "Updating data source to existing one..."
    models.Query.update(data_source=default_data_source.id).execute()
    models.QueryResult.update(data_source=default_data_source.id).execute()

    with db.database.transaction():
        print "Setting data source to non nullable..."
        migrator.set_nullable(models.Query, models.Query.data_source, False)

    with db.database.transaction():
        print "Setting data source to non nullable..."
        migrator.set_nullable(models.QueryResult, models.QueryResult.data_source, False)

    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.set_nullable(models.Query, models.Query.description, True)

    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.set_nullable(models.Widget, models.Widget.query_id, True)
        migrator.set_nullable(models.Widget, models.Widget.type, True)

    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.set_nullable(models.Query, models.Query.description, True)

    db.close_db(None)
示例#9
0
        try:
            migrator.add_column(models.Query, models.Query.user, "user_id")
            migrator.add_column(models.Dashboard, models.Dashboard.user, "user_id")
        except peewee.ProgrammingError:
            print "Failed to create user_id column -- assuming it already exists"

    print "Creating user for all queries and dashboards..."
    for obj in itertools.chain(models.Query.select(), models.Dashboard.select()):
        # Some old databases might have queries with empty string as user email:
        email = obj.user_email or settings.ADMINS[0]
        email = email.split(',')[0]

        print ".. {} , {}, {}".format(type(obj), obj.id, email)

        try:
            user = models.User.get(models.User.email == email)
        except models.User.DoesNotExist:
            is_admin = email in settings.ADMINS
            user = models.User.create(email=email, name=email, is_admin=is_admin)

        obj.user = user
        obj.save()

    print "Set user_id to non null..."
    with db.database.transaction():
        migrator.set_nullable(models.Query, models.Query.user, False)
        migrator.set_nullable(models.Dashboard, models.Dashboard.user, False)
        migrator.set_nullable(models.Query, models.Query.user_email, True)
        migrator.set_nullable(models.Dashboard, models.Dashboard.user_email, True)
示例#10
0
    models.Query.data_source.null = True
    models.QueryResult.data_source.null = True
    try:
        with db.database.transaction():
            migrator.add_column(models.Query, models.Query.data_source,
                                "data_source_id")
    except peewee.ProgrammingError:
        print "Failed to create data_source_id column -- assuming it already exists"

    try:
        with db.database.transaction():
            migrator.add_column(models.QueryResult,
                                models.QueryResult.data_source,
                                "data_source_id")
    except peewee.ProgrammingError:
        print "Failed to create data_source_id column -- assuming it already exists"

    print "Updating data source to existing one..."
    models.Query.update(data_source=default_data_source.id).execute()
    models.QueryResult.update(data_source=default_data_source.id).execute()

    with db.database.transaction():
        print "Setting data source to non nullable..."
        migrator.set_nullable(models.Query, models.Query.data_source, False)

    with db.database.transaction():
        print "Setting data source to non nullable..."
        migrator.set_nullable(models.QueryResult,
                              models.QueryResult.data_source, False)

    db.close_db(None)