import os from app_factory import app def _main_server_options() -> tuple[str, int, bool, str, bool]: host = str(os.getenv("APP_HOST", "0.0.0.0") or "0.0.0.0").strip() or "0.0.0.0" try: port = int(os.getenv("APP_PORT", "8000")) except Exception: port = 8000 port = max(1, min(port, 65535)) reload_flag = str(os.getenv("APP_RELOAD", "true")).strip().lower() in {"1", "true", "yes", "on"} log_level = str(os.getenv("APP_LOG_LEVEL", "warning") or "warning").strip().lower() or "warning" access_log = str(os.getenv("APP_ACCESS_LOG", "false")).strip().lower() in {"1", "true", "yes", "on"} return host, port, reload_flag, log_level, access_log if __name__ == "__main__": import uvicorn host, port, reload_flag, log_level, access_log = _main_server_options() if reload_flag: uvicorn.run( "main:app", host=host, port=port, reload=True, log_level=log_level, access_log=access_log, ) else: uvicorn.run( app, host=host, port=port, log_level=log_level, access_log=access_log, )