41 lines
1.0 KiB
Python
41 lines
1.0 KiB
Python
"""
|
|
pccs — 算力中心集群系统 (Pooled Computing Cluster System)
|
|
入口: webapp(init) 模式
|
|
"""
|
|
import os, sys
|
|
|
|
from ahserver.webapp import webapp
|
|
|
|
|
|
def init():
|
|
# Monkey-patch DictObject.__getattr__ — 所有 ServerEnv 实例默认返回 'pccs'
|
|
from appPublic.dictObject import DictObject
|
|
|
|
_orig = DictObject.__getattr__
|
|
|
|
def _patched(self, key):
|
|
if key == 'get_module_dbname':
|
|
return lambda m: 'pccs'
|
|
if key == 'password_encode':
|
|
return lambda s: s
|
|
return _orig(self, key)
|
|
|
|
DictObject.__getattr__ = _patched
|
|
|
|
# 初始化全局 DBPools — sqlor 的 get_sor_context 创建新 DBPools() 时
|
|
# 需要能拿到 databases。通过 sqlor.dbpools 模块级全局变量共享。
|
|
from sqlor.dbpools import DBPools
|
|
from appPublic.jsonConfig import getConfig
|
|
|
|
config = getConfig()
|
|
DBPools(config.databases)
|
|
|
|
from appbase.init import load_appbase
|
|
from rbac.init import load_rbac
|
|
load_appbase()
|
|
load_rbac()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
webapp(init)
|