Пример #1
0
def register_extensions(app):
    from application.extensions import db
    db.init_app(app)

    from application.models import PlanningAuthority
    from application.extensions import migrate
    migrate.init_app(app=app)

    from flask_sslify import SSLify
    sslify = SSLify(app)

    from application.extensions import OAuth
    oauth = OAuth(app)

    auth0 = oauth.register(
        'auth0',
        client_id=app.config['AUTH0_CLIENT_ID'],
        client_secret=app.config['AUTH0_CLIENT_SECRET'],
        api_base_url=app.config['AUTH0_BASE_URL'],
        access_token_url=f"{app.config['AUTH0_BASE_URL']}/oauth/token",
        authorize_url=f"{app.config['AUTH0_BASE_URL']}/authorize",
        client_kwargs={
            'scope': 'openid profile',
        },
    )

    app.config['auth0'] = auth0
Пример #2
0
def register_extensions(app):
    from application.extensions import db
    db.init_app(app)

    from application.extensions import migrate
    migrate.init_app(app=app)

    from application.extensions import OAuth
    oauth = OAuth(app)

    auth0 = oauth.register(
        'auth0',
        client_id=app.config['AUTH0_CLIENT_ID'],
        client_secret=app.config['AUTH0_CLIENT_SECRET'],
        api_base_url=app.config['AUTH0_BASE_URL'],
        access_token_url=f"{app.config['AUTH0_BASE_URL']}/oauth/token",
        authorize_url=f"{app.config['AUTH0_BASE_URL']}/authorize",
        client_kwargs={
            'scope': 'openid profile',
        },
    )

    app.config['auth0'] = auth0

    from application.extensions import DebugToolbarExtension
    DebugToolbarExtension(app)
Пример #3
0
def create_app(config_filename):
    """
    Flask application factory

    :param config_filename: Config to use
    :returns: Flask app instance
    """
    app = Flask(__name__)
    app.config.from_object(config_filename)

    db.init_app(app)
    ma.init_app(app)
    jwt.init_app(app)
    migrate.init_app(app, db)

    # logging.config.fileConfig('application/logging.config')
    # logging.getLogger('sysLogLogger').critical('critical message')

    for installed_app in app.config['INSTALLED_APPS']:
        view = importlib.import_module('views.{}'.format(installed_app))
        app.register_blueprint(view.blueprint)

    # get_config_args(app)

    return app
Пример #4
0
def register_extensions(app):

    from application.extensions import db
    db.init_app(app)

    from application.models import LocalAuthority
    from application.extensions import migrate
    migrate.init_app(app=app)
Пример #5
0
def registe_extensions(app):
    """config extensions"""
    db.init_app(app)
    migrate.init_app(app, db)
    login_manager.init_app(app)

    @login_manager.user_loader
    def load_user(user_id):
        return User.query.filter_by(id=user_id).first()
def register_extensions(app):
    from flask_sslify import SSLify
    SSLify(app)

    from application.extensions import db
    db.init_app(app)

    from application.models import Cache
    from application.extensions import migrate
    migrate.init_app(app=app)
Пример #7
0
def register_extensions(app):
    assets.init_app(app)
    bcrypt.init_app(app)
    cache.init_app(app)
    db.init_app(app)
    login_manager.init_app(app)
    migrate.init_app(app, db)
    asset_locator.init_app(app)
    basic_auth.init_app(app)
    return None
Пример #8
0
def configure_extensions(app):
    import application.extensions as ex
    from application.extensions import redis
    from application.extensions import migrate, db

    for extension in app.config['EXTENSIONS']:
        try:
            getattr(ex, extension).init_app(app)
        except (AttributeError, TypeError):
            pass
    redis.init_app(app, strict=True)
    migrate.init_app(app, db)
Пример #9
0
def create_app(config_class=Config):
    app.config.from_object(config_class)
    from application import controllers
    from application.models import db, User
    from application.admin import init_admin
    db.init_app(app)
    migrate.init_app(app, db)
    csrf.init_app(app)
    login_manager.init_app(app)
    init_admin(app)
    authentication(User)
    return app
def register_extensions(app):
    from application.extensions import misaka
    from application.extensions import db
    from application.extensions import migrate

    misaka.init_app(app)
    db.init_app(app)
    migrate.init_app(app)

    if os.environ.get('FLASK_ENV') == 'production':
        from flask_sslify import SSLify
        SSLify(app)
Пример #11
0
def configure_extensions(app):
    import application.extensions as ex
    from application.extensions import redis
    from application.extensions import migrate, db

    for extension in app.config['EXTENSIONS']:
        try:
            getattr(ex, extension).init_app(app)
        except (AttributeError, TypeError):
            pass
    redis.init_app(app, strict=True)
    migrate.init_app(app, db)
Пример #12
0
def extensions(app):
    """
    Register 0 or more extensions (mutates the app passed in).

    :param app: Flask application instance
    :return: None
    """

    db.init_app(app)
    login_manager.init_app(app)
    migrate.init_app(app, db)

    return None
Пример #13
0
def create_app(config_class=Config):
    app.config.update(api_spec)
    app.config.from_object(config_class)

    from application.models import db
    from application.admin import init_admin

    db.init_app(app)
    migrate.init_app(app, db)
    admin_manager.init_app(app)
    init_admin(admin_manager)
    jwt.init_app(app)
    docs.init_app(app)
    register_blueprints(app)
    register_routes(docs)
    return app
Пример #14
0
def register_extensions(app):
    from application.extensions import db
    from application.extensions import login
    from application.extensions import migrate
    from application.extensions import mail
    from application.extensions import babel
    from application.extensions import csrf

    csrf._exempt_views.add('dash.dash.dispatch')

    db.init_app(app)
    login.init_app(app)
    login.login_view = "auth.login"
    migrate.init_app(app, db)
    mail.init_app(app)
    babel.init_app(app)
    csrf.init_app(app)
Пример #15
0
def configure(app, config_name):
    selected_config = config[config_name or "default"]
    app.config.from_object(selected_config)
    app.config.from_envvar("FLASK_CONFIG", silent=True)

    db.init_app(app)
    migrate.init_app(app)
    cache.init_app(app)
    moment.init_app(app)
    celery.init_app(app)

    if selected_config.BUGSNAG_API_KEY:
        # Configure Bugsnag
        bugsnag.configure(api_key=selected_config.BUGSNAG_API_KEY,
                          auto_capture_sessions=True)

        bugsnag.flask.handle_exceptions(app)
Пример #16
0
def register_extensions(app):
    db.init_app(app)
    migrate.init_app(app, db)
    babel.init_app(app)
    swagger.init_app(app)
    flask_wtf.CSRFProtect(app)
    # Setup Flask-Security
    from application.models.authbase import User, Role

    # from application.forms.user import ExtendedLoginForm

    user_datastore = SQLAlchemyUserDatastore(db, User, Role)
    security.init_app(
        app,
        datastore=user_datastore,
        # login_form=ExtendedLoginForm,
        # register_form=ExtendedRegisterForm
    )
Пример #17
0
def app():
    """
    Creates a Postgres database and Flask app context for the tests and
    drops the database when all tests are done
    """
    client = Flask(__name__)
    postgres = PostgresImage(port=55432,
                             alembic_config=root_dir.joinpath(
                                 "migrations", "alembic.ini").as_posix())
    client.config['SQLALCHEMY_DATABASE_URI'] = postgres.connection_details

    with client.app_context():
        # initial run requires the SQLAlchemy and migration instance to be initialized as these objects
        # will be used to migrate the database in the postgres.run() method
        db.init_app(client)
        migrate.init_app(client, db)
        postgres.run()

    yield client
    postgres.close()
Пример #18
0
def configure(app, config_name):
    selected_config = config[config_name or "default"]
    app.config.from_object(selected_config)
    app.config.from_envvar("FLASK_CONFIG", silent=True)

    db.init_app(app)
    migrate.init_app(app)
    cache.init_app(app)
    moment.init_app(app)
    celery.init_app(app)

    if app.config["SSL_ENABLE"]:
        # Force https
        csp = copy.deepcopy(GOOGLE_CSP_POLICY)
        csp["style-src"] += " 'unsafe-inline'"
        csp["style-src"] += " platform.twitter.com"
        csp["style-src"] += " *.twimg.com"
        csp["frame-src"] += " *.twitter.com"
        csp["script-src"] += " *.google.com"
        csp["script-src"] += " platform.twitter.com"
        csp["script-src"] += " cdnjs.cloudflare.com"
        csp["script-src"] += " cdn.syndication.twimg.com"
        csp["script-src"] += " *.gstatic.com"
        csp["script-src"] += " 'unsafe-inline' 'unsafe-eval'"
        csp["default-src"] += " *.google-analytics.com"
        csp["img-src"] = csp["default-src"]
        csp["img-src"] += " *.twitter.com"
        csp["img-src"] += " *.twimg.com"
        csp["img-src"] += " data:"

        Talisman(app, content_security_policy=csp)

    if app.config["BUGSNAG_API_KEY"]:
        # Configure Bugsnag
        bugsnag.configure(api_key=app.config["BUGSNAG_API_KEY"],
                          auto_capture_sessions=True)

        bugsnag.flask.handle_exceptions(app)
Пример #19
0
def register_extensions(app):
    db.init_app(app)
    migrate.init_app(app, db)
    api_scaffold.init_app(app, db, auth)
    return None
Пример #20
0
def register_extensions(app):
    db.init_app(app)
    migrate.init_app(app, db)
    return None
Пример #21
0
def register_extensions(app):
    """Register Flask extensions."""
    db.init_app(app)
    migrate.init_app(app, db)
    return None