def configure_db(app): if not app.config['TESTING']: cfg = Config.getInstance() db_uri = cfg.getSQLAlchemyDatabaseURI() if db_uri is None: raise Exception("No proper SQLAlchemy store has been configured. Please edit your indico.conf") app.config['SQLALCHEMY_DATABASE_URI'] = db_uri # DB options app.config['SQLALCHEMY_ECHO'] = cfg.getSQLAlchemyEcho() app.config['SQLALCHEMY_RECORD_QUERIES'] = cfg.getSQLAlchemyRecordQueries() app.config['SQLALCHEMY_POOL_SIZE'] = cfg.getSQLAlchemyPoolSize() app.config['SQLALCHEMY_POOL_TIMEOUT'] = cfg.getSQLAlchemyPoolTimeout() app.config['SQLALCHEMY_POOL_RECYCLE'] = cfg.getSQLAlchemyPoolRecycle() app.config['SQLALCHEMY_MAX_OVERFLOW'] = cfg.getSQLAlchemyMaxOverflow() import_all_models() db.init_app(app) if not app.config['TESTING']: apply_db_loggers(app) plugins_loaded.connect(lambda sender: configure_mappers(), app, weak=False) models_committed.connect(on_models_committed, app)
def configure_db(app): app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True if app.config['TESTING']: # tests do not actually use sqlite but run a postgres instance and # reconfigure flask-sqlalchemy to use that database. by setting # a dummy uri explicitly instead of letting flask-sqlalchemy do # the exact same thing we avoid a warning when running tests. app.config.setdefault('SQLALCHEMY_DATABASE_URI', 'sqlite:///:memory:') else: if config.SQLALCHEMY_DATABASE_URI is None: raise Exception( "No proper SQLAlchemy store has been configured. Please edit your indico.conf" ) app.config['SQLALCHEMY_DATABASE_URI'] = config.SQLALCHEMY_DATABASE_URI app.config['SQLALCHEMY_RECORD_QUERIES'] = False app.config['SQLALCHEMY_POOL_SIZE'] = config.SQLALCHEMY_POOL_SIZE app.config['SQLALCHEMY_POOL_TIMEOUT'] = config.SQLALCHEMY_POOL_TIMEOUT app.config['SQLALCHEMY_POOL_RECYCLE'] = config.SQLALCHEMY_POOL_RECYCLE app.config['SQLALCHEMY_MAX_OVERFLOW'] = config.SQLALCHEMY_MAX_OVERFLOW import_all_models() db.init_app(app) if not app.config['TESTING']: apply_db_loggers(app) plugins_loaded.connect(lambda sender: configure_mappers(), app, weak=False) models_committed.connect(on_models_committed, app)
def configure_db(app): app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True if not app.config['TESTING']: cfg = Config.getInstance() db_uri = cfg.getSQLAlchemyDatabaseURI() if db_uri is None: raise Exception( "No proper SQLAlchemy store has been configured. Please edit your indico.conf" ) app.config['SQLALCHEMY_DATABASE_URI'] = db_uri app.config['SQLALCHEMY_RECORD_QUERIES'] = False app.config['SQLALCHEMY_POOL_SIZE'] = cfg.getSQLAlchemyPoolSize() app.config['SQLALCHEMY_POOL_TIMEOUT'] = cfg.getSQLAlchemyPoolTimeout() app.config['SQLALCHEMY_POOL_RECYCLE'] = cfg.getSQLAlchemyPoolRecycle() app.config['SQLALCHEMY_MAX_OVERFLOW'] = cfg.getSQLAlchemyMaxOverflow() import_all_models() db.init_app(app) if not app.config['TESTING']: apply_db_loggers(app) plugins_loaded.connect(lambda sender: configure_mappers(), app, weak=False) models_committed.connect(on_models_committed, app)
def test_load(mock_entry_point, flask_app, engine): """ We can load a plugin """ loaded = {'result': False} def _on_load(sender): loaded['result'] = True plugins_loaded.connect(_on_load, flask_app) engine.load_plugins(flask_app) assert loaded['result'] with flask_app.app_context(): assert len(engine.get_failed_plugins()) == 0 assert list(engine.get_active_plugins()) == ['espresso'] plugin = engine.get_active_plugins()['espresso'] assert plugin.title == 'EspressoModule' assert plugin.description == 'Creamy espresso out of your Flask app' assert plugin.version == '1.2.3' assert plugin.package_version == '1.2.3'
def configure_db(app): app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True if app.config['TESTING']: # tests do not actually use sqlite but run a postgres instance and # reconfigure flask-sqlalchemy to use that database. by setting # a dummy uri explicitly instead of letting flask-sqlalchemy do # the exact same thing we avoid a warning when running tests. app.config.setdefault('SQLALCHEMY_DATABASE_URI', 'sqlite:///:memory:') else: if config.SQLALCHEMY_DATABASE_URI is None: raise Exception("No proper SQLAlchemy store has been configured. Please edit your indico.conf") app.config['SQLALCHEMY_DATABASE_URI'] = config.SQLALCHEMY_DATABASE_URI app.config['SQLALCHEMY_RECORD_QUERIES'] = False app.config['SQLALCHEMY_POOL_SIZE'] = config.SQLALCHEMY_POOL_SIZE app.config['SQLALCHEMY_POOL_TIMEOUT'] = config.SQLALCHEMY_POOL_TIMEOUT app.config['SQLALCHEMY_POOL_RECYCLE'] = config.SQLALCHEMY_POOL_RECYCLE app.config['SQLALCHEMY_MAX_OVERFLOW'] = config.SQLALCHEMY_MAX_OVERFLOW import_all_models() db.init_app(app) if not app.config['TESTING']: apply_db_loggers(app) plugins_loaded.connect(lambda sender: configure_mappers(), app, weak=False) models_committed.connect(on_models_committed, app)
def configure_db(app): app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True if not app.config['TESTING']: if config.SQLALCHEMY_DATABASE_URI is None: raise Exception( "No proper SQLAlchemy store has been configured. Please edit your indico.conf" ) app.config['SQLALCHEMY_DATABASE_URI'] = config.SQLALCHEMY_DATABASE_URI app.config['SQLALCHEMY_RECORD_QUERIES'] = False app.config['SQLALCHEMY_POOL_SIZE'] = config.SQLALCHEMY_POOL_SIZE app.config['SQLALCHEMY_POOL_TIMEOUT'] = config.SQLALCHEMY_POOL_TIMEOUT app.config['SQLALCHEMY_POOL_RECYCLE'] = config.SQLALCHEMY_POOL_RECYCLE app.config['SQLALCHEMY_MAX_OVERFLOW'] = config.SQLALCHEMY_MAX_OVERFLOW import_all_models() db.init_app(app) if not app.config['TESTING']: apply_db_loggers(app) plugins_loaded.connect(lambda sender: configure_mappers(), app, weak=False) models_committed.connect(on_models_committed, app)