예제 #1
0
파일: env.py 프로젝트: jwhitlock/ichnaea
def run_migrations_online():
    # Create a database connection using SQLALCHEMY_URL defined in the
    # environment.
    db_url = get_sqlalchemy_url()
    db = configure_db(uri=db_url, pool=False)

    with db.engine.connect() as connection:
        context.configure(connection=connection)
        with context.begin_transaction():
            context.run_migrations()
예제 #2
0
def create_database():
    """Create a database."""
    db_url = get_sqlalchemy_url()
    print("Creating database %s...." % db_url)
    try:
        create_db(uri=db_url)
    except ProgrammingError:
        print("Database already exists.")
        return 1
    print("Done.")
예제 #3
0
파일: db.py 프로젝트: vamsikarnika/ichnaea
def drop_database():
    """Drop an existing database."""
    db_url = get_sqlalchemy_url()
    print("Dropping database %s...." % db_url)
    try:
        drop_db(uri=db_url)
    except InternalError:
        print("Database does not exist.")
        return 1
    print("Done.")
예제 #4
0
def setup_database():
    # Create it if it doesn't exist
    try:
        create_db()
    except ProgrammingError:
        pass

    # Clean up the tables and set them up
    db = configure_db(uri=get_sqlalchemy_url())
    cleanup_tables(db.engine)
    setup_tables(db.engine)
    db.close()
예제 #5
0
def db(database):
    db = configure_db(uri=get_sqlalchemy_url())
    yield db
    db.close()
예제 #6
0
def db_shared_session(database):
    """Return TestDatabase where db.session() returns the thread-local session."""
    db = TestDatabase(uri=get_sqlalchemy_url(), shared=True)
    yield db
    db.close()
예제 #7
0
def db_independent_session(database):
    """Return TestDatabase where db.session() returns a new session."""
    db = TestDatabase(uri=get_sqlalchemy_url())
    yield db
    db.close()
예제 #8
0
def drop_database():
    """Drop an existing database."""
    db_url = get_sqlalchemy_url()
    print("Dropping database %s...." % db_url)
    drop_db(uri=db_url)
    print("Done.")