Пример #1
0
def get_storage():
    if ARGS.storage == 'mongo':
        db_name = 'vakt_db'
        collection = 'vakt_policies_benchmark'
        client = MongoClient('127.0.0.1', 27017)
        yield MongoStorage(client, db_name, collection=collection)
        client[db_name][collection].delete_many({})
        client.close()
    elif ARGS.storage == 'sql':
        engine = create_engine(ARGS.sql_dsn)
        sql_session = scoped_session(sessionmaker(bind=engine))
        storage = SQLStorage(scoped_session=sql_session)
        migration = SQLMigrationSet(storage)
        migration.up()
        yield storage
        # todo - why is there left an uncommitted transaction?
        sql_session.commit()
        migration.down()
    if ARGS.storage == 'redis':
        collection = 'vakt_policies_benchmark'
        client = Redis('127.0.0.1', 6379, db=0)
        if ARGS.serializer == 'json':
            serializer = JSONSerializer()
        elif ARGS.serializer == 'pickle':
            serializer = PickleSerializer()
        else:
            serializer = None
        yield RedisStorage(client, collection=collection, serializer=serializer)
        client.flushdb()
        client.close()
    else:
        yield MemoryStorage()
Пример #2
0
def get_storage():
    if ARGS.storage == 'mongo':
        db_name = 'vakt_db'
        collection = 'vakt_policies_benchmark'
        client = MongoClient('127.0.0.1', 27017)
        yield MongoStorage(client, db_name, collection=collection)
        client[db_name][collection].delete_many({})
        client.close()
    elif ARGS.storage == 'sql':
        engine = create_engine(ARGS.sql_dsn)
        sql_session = scoped_session(sessionmaker(bind=engine))
        storage = SQLStorage(scoped_session=sql_session)
        migration = SQLMigrationSet(storage)
        migration.up()
        yield storage
        # todo - why is there left an uncommitted transaction?
        sql_session.commit()
        migration.down()
    else:
        yield MemoryStorage()
Пример #3
0
 def st(self, session):
     yield SQLStorage(scoped_session=session)
     session.remove()
Пример #4
0
 def create_sql_storage(dsn):
     engine = create_engine(dsn, echo=True)
     Base.metadata.create_all(engine)
     session = scoped_session(sessionmaker(bind=engine))
     return SQLStorage(scoped_session=session)
Пример #5
0
 def migration(self, session):
     storage = SQLStorage(scoped_session=session)
     yield Migration0To1x3x0(storage)
     session.remove()
Пример #6
0
 def migration_set(self, session):
     storage = SQLStorage(scoped_session=session)
     yield SQLMigrationSet(storage)
     session.remove()