Ejemplo n.º 1
0
def init_db():
    from trove.common import cfg
    from trove.db import get_db_api
    from trove.db.sqlalchemy import session
    CONF = cfg.CONF
    db_api = get_db_api()
    db_api.db_sync(CONF)
    session.configure_db(CONF)
Ejemplo n.º 2
0
def init_db():
    from trove.common import cfg
    from trove.db import get_db_api
    from trove.db.sqlalchemy import session
    CONF = cfg.CONF
    db_api = get_db_api()
    db_api.db_sync(CONF)
    session.configure_db(CONF)
Ejemplo n.º 3
0
def init_db():
    with LOCK:
        global DB_SETUP
        if not DB_SETUP:
            db_api = get_db_api()
            db_api.db_sync(CONF)
            session.configure_db(CONF)
            DB_SETUP = True
Ejemplo n.º 4
0
def initialize_database():
    from trove.db import get_db_api
    from trove.db.sqlalchemy import session
    db_api = get_db_api()
    db_api.drop_db(CONF)  # Destroys the database, if it exists.
    db_api.db_sync(CONF)
    session.configure_db(CONF)
    datastore_init()
    db_api.configure_db(CONF)
Ejemplo n.º 5
0
def initialize_database():
    from trove.db import get_db_api
    from trove.instance import models
    from trove.db.sqlalchemy import session
    db_api = get_db_api()
    db_api.drop_db(CONF)  # Destroys the database, if it exists.
    db_api.db_sync(CONF)
    session.configure_db(CONF)
    # Adds the image for mysql (needed to make most calls work).
    models.ServiceImage.create(service_name="mysql", image_id="fake")
    db_api.configure_db(CONF)
Ejemplo n.º 6
0
Archivo: util.py Proyecto: vmazur/trove
def init_db():
    global DB_SETUP
    if DB_SETUP:
        return
    from trove.common import cfg
    from trove.db import get_db_api
    from trove.db.sqlalchemy import session
    CONF = cfg.CONF
    db_api = get_db_api()
    db_api.db_sync(CONF)
    session.configure_db(CONF)
    DB_SETUP = True
Ejemplo n.º 7
0
def upgrade(migrate_engine):
    meta.bind = migrate_engine

    instance_table = Table('instances', meta, autoload=True)

    session.configure_db(CONF)

    instances = DBInstance.find_all(datastore_version_id=None)
    if instances.count() > 0:
        datastore = DBDatastore.get_by(manager="mysql")
        datastore = datastore or DBDatastore.create(
            name="Legacy MySQL",
            manager="mysql",
        )

        image_table = Table('service_images', meta, autoload=True)
        image = select(
            columns=["id", "image_id", "service_name"],
            from_obj=image_table,
            whereclause="service_name='mysql'",
            limit=1
        ).execute().fetchone()

        image_id = "00000000-0000-0000-0000-000000000000"
        if image:
            image_id = image.image_id

        version = DBDatastoreVersion.create(
            datastore_id=datastore.id,
            name="Unknown Legacy Version",
            image_id=image_id,
            active=False,
        )

        for instance in instances:
            instance.update_db(datastore_version_id=version.id)

    instance_table.c.datastore_version_id.alter(nullable=False)
Ejemplo n.º 8
0
def configure_db_for_plugins(options, *plugins):
    for plugin in plugins:
        session.configure_db(options, models_mapper=plugin.mapper)
Ejemplo n.º 9
0
def configure_db(options, *plugins):
    session.configure_db(options)
    configure_db_for_plugins(options, *plugins)
Ejemplo n.º 10
0
def configure_db_for_plugins(options, *plugins):
    for plugin in plugins:
        session.configure_db(options, models_mapper=plugin.mapper)
Ejemplo n.º 11
0
def configure_db(options, *plugins):
    session.configure_db(options)
    configure_db_for_plugins(options, *plugins)