def create_app(load_admin=True): from redash import admin, authentication, extensions, handlers from redash.handlers.webpack import configure_webpack from redash.handlers import chrome_logger from redash.models import db, users from redash.metrics.request import provision_app app = Flask(__name__, template_folder=settings.STATIC_ASSETS_PATH, static_folder=settings.STATIC_ASSETS_PATH, static_path='/static') # Make sure we get the right referral address even behind proxies like nginx. app.wsgi_app = ProxyFix(app.wsgi_app, settings.PROXIES_COUNT) app.url_map.converters['org_slug'] = SlugConverter if settings.ENFORCE_HTTPS: SSLify(app, skips=['ping']) if settings.SENTRY_DSN: from raven import Client from raven.contrib.flask import Sentry from raven.handlers.logging import SentryHandler client = Client(settings.SENTRY_DSN, release=__version__, install_logging_hook=False) sentry = Sentry(app, client=client) sentry.client.release = __version__ sentry_handler = SentryHandler(client=client) sentry_handler.setLevel(logging.ERROR) logging.getLogger().addHandler(sentry_handler) # configure our database app.config['SQLALCHEMY_DATABASE_URI'] = settings.SQLALCHEMY_DATABASE_URI app.config.update(settings.all_settings()) provision_app(app) db.init_app(app) migrate.init_app(app, db) if load_admin: admin.init_admin(app) mail.init_app(app) authentication.init_app(app) limiter.init_app(app) handlers.init_app(app) configure_webpack(app) extensions.init_extensions(app) chrome_logger.init_app(app) users.init_app(app) # support cas auth if settings.CAS_AUTH: from redash.authentication.cas import init_app init_app(app) return app
def create_app(load_admin=True): from redash import admin, authentication, extensions, handlers from redash.handlers.webpack import configure_webpack from redash.handlers import chrome_logger from redash.models import db, users from redash.metrics.request import provision_app app = Flask(__name__, template_folder=settings.STATIC_ASSETS_PATH, static_folder=settings.STATIC_ASSETS_PATH, static_path='/static') # Make sure we get the right referral address even behind proxies like nginx. app.wsgi_app = ProxyFix(app.wsgi_app, settings.PROXIES_COUNT) app.url_map.converters['org_slug'] = SlugConverter if settings.ENFORCE_HTTPS: SSLify(app, skips=['ping']) if settings.SENTRY_DSN: from raven import Client from raven.contrib.flask import Sentry from raven.handlers.logging import SentryHandler client = Client(settings.SENTRY_DSN, release=__version__, install_logging_hook=False) sentry = Sentry(app, client=client) sentry.client.release = __version__ sentry_handler = SentryHandler(client=client) sentry_handler.setLevel(logging.ERROR) logging.getLogger().addHandler(sentry_handler) # configure our database app.config['SQLALCHEMY_DATABASE_URI'] = settings.SQLALCHEMY_DATABASE_URI app.config.update(settings.all_settings()) provision_app(app) db.init_app(app) migrate.init_app(app, db) if load_admin: admin.init_admin(app) mail.init_app(app) authentication.init_app(app) limiter.init_app(app) handlers.init_app(app) configure_webpack(app) extensions.init_extensions(app) chrome_logger.init_app(app) users.init_app(app) return app
def create_app(load_admin=True): from redash import admin, authentication, extensions, handlers from redash.handlers.webpack import configure_webpack from redash.handlers import chrome_logger from redash.models import db, users from redash.metrics.request import provision_app from redash.utils import sentry sentry.init() app = Flask(__name__, template_folder=settings.STATIC_ASSETS_PATH, static_folder=settings.STATIC_ASSETS_PATH, static_path='/static') # Make sure we get the right referral address even behind proxies like nginx. app.wsgi_app = ProxyFix(app.wsgi_app, settings.PROXIES_COUNT) app.url_map.converters['org_slug'] = SlugConverter if settings.ENFORCE_HTTPS: SSLify(app, skips=['ping']) # configure our database app.config['SQLALCHEMY_DATABASE_URI'] = settings.SQLALCHEMY_DATABASE_URI app.config.update(settings.all_settings()) provision_app(app) db.init_app(app) migrate.init_app(app, db) if load_admin: admin.init_admin(app) mail.init_app(app) authentication.init_app(app) limiter.init_app(app) handlers.init_app(app) configure_webpack(app) extensions.init_extensions(app) chrome_logger.init_app(app) users.init_app(app) return app
def create_app(): from redash import authentication, extensions, handlers, security from redash.handlers.webpack import configure_webpack from redash.handlers import chrome_logger from redash.models import db, users from redash.metrics import request as request_metrics from redash.utils import sentry sentry.init() app = Flask(__name__, template_folder=settings.STATIC_ASSETS_PATH, static_folder=settings.STATIC_ASSETS_PATH, static_url_path='/static') # Make sure we get the right referral address even behind proxies like nginx. app.wsgi_app = ProxyFix(app.wsgi_app, settings.PROXIES_COUNT) app.url_map.converters['org_slug'] = SlugConverter # configure our database app.config['SQLALCHEMY_DATABASE_URI'] = settings.SQLALCHEMY_DATABASE_URI app.config.update(settings.all_settings()) security.init_app(app) request_metrics.init_app(app) db.init_app(app) migrate.init_app(app, db) mail.init_app(app) authentication.init_app(app) limiter.init_app(app) handlers.init_app(app) configure_webpack(app) extensions.init_app(app) chrome_logger.init_app(app) users.init_app(app) return app