Files
drhider/site/app.py
T
naeel 1d91d5f92e
Deploy drhider / validate (push) Waiting to run
bump 3.2.1 → 3.2.2
2026-07-12 12:59:16 +04:00

60 lines
1.8 KiB
Python

"""
DrHider — Managed Flask приложение на платформе Штурвал.
Приложение создаётся фабрикой create_app().
Штурвал запускает Flask самостоятельно (без Dockerfile/gunicorn).
Роуты разнесены по blueprint'ам:
- main_bp: GET / — веб-интерфейс
- health_bp: GET /health — проверка живости
- api_bp: POST /api/drhider — обфускация документов
"""
import os
import sys
from flask import Flask
# Добавляем корень проекта в sys.path для импорта пакета drhider
_sys_path_root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
if _sys_path_root not in sys.path:
sys.path.insert(0, _sys_path_root)
# Версия приложения (меняется при изменениях)
VERSION = "3.2.2"
def create_app():
"""Создать и настроить Flask-приложение.
Штурвал запускает из директории site/:
from app import app
Поэтому routes/ доступен как обычный подпакет.
Returns:
Экземпляр Flask с зарегистрированными blueprint'ами.
"""
app = Flask(__name__)
# Конфигурация
app.config["VERSION"] = VERSION
app.config["MAX_CONTENT_LENGTH"] = 200 * 1024 * 1024 # 200 MB
# Регистрируем blueprint'ы
from routes import register_routes
register_routes(app)
return app
# Экземпляр приложения — точка входа для Штурвала
app = create_app()
# Штурвал запускает: cd site && python app.py
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000)