Esempio n. 1
0
def get_db_classes():
    class_names = os.getenv(
        "APPR_DB_CLASSES", "appr.models.kv.etcd.db:EtcdDB,\
                            appr.models.kv.filesystem.db:FilesystemDB,\
                            appr.models.kv.redis.db:RedisDB").replace(
            r" ", "").split(",")
    return [symbol_by_name(symbol) for symbol in class_names]
Esempio n. 2
0
def get_db_class(name=None):
    if not name:
        name = os.getenv("APPR_DB_CLASS", DEFAULT_DB_CLASS)

    if name == "filesystem":
        from appr.models.kv.filesystem.db import FilesystemDB
        db = FilesystemDB

    elif name == "redis":
        from appr.models.kv.redis.db import RedisDB
        db = RedisDB

    elif name == "etcd":
        from appr.models.kv.etcd.db import EtcdDB
        db = EtcdDB

    else:
        db = symbol_by_name(name)

    return db
Esempio n. 3
0
def app(db_class):
    create_app = symbol_by_name(os.getenv("APPR_FLASK_APP", "appr.api.app:create_app"))
    app = create_app()
    return app