2026-07-21 15:39:47 +08:00
|
|
|
|
# server.py
|
|
|
|
|
|
import sys
|
|
|
|
|
|
from utils.launch import init_module_bank
|
|
|
|
|
|
from utils.config import ConfigLoader
|
|
|
|
|
|
|
2026-10-13 17:29:38 +08:00
|
|
|
|
# 加载配置文件并初始化模块银行(当前只剩内置插件 plugins.mbank)
|
2026-07-21 15:39:47 +08:00
|
|
|
|
config = ConfigLoader("config.toml")
|
|
|
|
|
|
init_module_bank(config)
|
|
|
|
|
|
|
2026-10-13 17:29:38 +08:00
|
|
|
|
# 网关本体是普通依赖包(chongming-gateway),直接导入即可——打包时
|
|
|
|
|
|
# PyInstaller/Nuitka 也沿这行静态收集网关及其依赖。
|
|
|
|
|
|
# 插件(plugins 包)由上面的模块银行提供,在 lifespan 启动时被网关按配置加载。
|
2026-07-21 15:39:47 +08:00
|
|
|
|
try:
|
2026-10-13 17:29:38 +08:00
|
|
|
|
from chongming.app import app as app_instance
|
2026-07-21 15:39:47 +08:00
|
|
|
|
except ImportError as e:
|
2026-10-13 17:29:38 +08:00
|
|
|
|
print(f"无法导入网关(chongming.app): {e}")
|
2026-07-21 15:39:47 +08:00
|
|
|
|
sys.exit(1)
|
|
|
|
|
|
|
|
|
|
|
|
# 暴露 ASGI 应用实例,供 uvicorn 服务器使用
|
|
|
|
|
|
app = app_instance
|