30 lines
773 B
Python
30 lines
773 B
Python
import logging
|
|
import os
|
|
import runpy
|
|
import sys
|
|
from pathlib import Path
|
|
|
|
BASE_DIR = Path(__file__).resolve().parent
|
|
INSTANCE_DIR = BASE_DIR / "instance"
|
|
CONFIG_PATH = INSTANCE_DIR / "config.py"
|
|
|
|
config = {}
|
|
if CONFIG_PATH.exists():
|
|
config = runpy.run_path(str(CONFIG_PATH))
|
|
|
|
app_root = config.get("APP_ROOT", str(BASE_DIR))
|
|
site_packages = config.get("SITE_PACKAGES")
|
|
|
|
sys.path.insert(0, app_root)
|
|
if site_packages:
|
|
sys.path.insert(0, site_packages)
|
|
|
|
if config.get("SECRET_KEY"):
|
|
os.environ["SECRET_KEY"] = config["SECRET_KEY"]
|
|
|
|
log_kwargs = {"level": getattr(logging, config.get("LOG_LEVEL", "DEBUG")), "stream": sys.stderr}
|
|
logging.basicConfig(**log_kwargs)
|
|
|
|
from BreCal import create_app
|
|
application = create_app(instance_path=config.get("INSTANCE_PATH"))
|