blob: 7f423c286629339605ac17356c1bce7e4af6db58 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
"""The Quality-Control Web Application entry point"""
import os
from flask import Flask
from .entry import entrybp
from .parse import parsebp
def instance_path():
"""Retrieve the `instance_path`. Raise an exception if not defined."""
path = os.getenv("QCAPP_INSTANCE_PATH", None)
if path is None:
raise Exception((
"Configuration Error: Set the `QCAPP_INSTANCE_PATH` environment "
"variable."))
return path
def create_app(instance_path):
"""The application factory"""
app = Flask(
__name__, instance_path=instance_path, instance_relative_config=True)
app.config.from_pyfile(os.path.join(os.getcwd(), "etc/default_config.py"))
app.config.from_pyfile("config.py") # Override defaults with instance path
# setup blueprints
app.register_blueprint(entrybp, url_prefix="/")
app.register_blueprint(parsebp, url_prefix="/parse")
return app
|