This commit is contained in:
yumoqing 2025-06-09 13:53:28 +08:00
parent b5c2320c35
commit 62e8459875

View File

@ -8,11 +8,16 @@ from ahserver.serverenv import ServerEnv
from appPublic.jsonConfig import getConfig from appPublic.jsonConfig import getConfig
def webapp(init_func): def webapp(init_func):
if parser is None:
parser = argparse.ArgumentParser(prog="Sage") parser = argparse.ArgumentParser(prog="Sage")
parser.add_argument('-w', '--workdir') parser.add_argument('-w', '--workdir')
parser.add_argument('-p', '--port') parser.add_argument('-p', '--port')
args = parser.parse_args() args = parser.parse_args()
workdir = args.workdir or os.getcwd() workdir = args.workdir or os.getcwd()
port = args.port or config.website.port or 8080
server(init_func, workdir, port)
def server(init_func, workdir, port=None):
p = ProgramPath() p = ProgramPath()
config = getConfig(workdir, NS={'workdir':workdir, 'ProgramPath':p}) config = getConfig(workdir, NS={'workdir':workdir, 'ProgramPath':p})
if config.logger: if config.logger:
@ -22,11 +27,15 @@ def webapp(init_func):
else: else:
logger = MyLogger('webapp', levelname='info') logger = MyLogger('webapp', levelname='info')
init_func() init_func()
se = ServerEnv()
se.workdir = workdir
se.port = port
server = ConfiguredServer(workdir=workdir) server = ConfiguredServer(workdir=workdir)
port = args.port or config.website.port or 8080 port = port or config.website.port or 8080
port = int(port) port = int(port)
server.run(port=port) server.run(port=port)
if __name__ == '__main__': if __name__ == '__main__':
from main import main from main import main
webapp(main) webapp(main)