30 lines
1010 B
Python
30 lines
1010 B
Python
|
#!/usr/bin/env python
|
||
|
|
||
|
# This software is licensed by the MIT License, see LICENSE file
|
||
|
# Copyright © 2024 Gregory Lirent
|
||
|
|
||
|
import os
|
||
|
import uvicorn
|
||
|
from app import app, init
|
||
|
from app.models import LogLevel
|
||
|
|
||
|
if __name__ == "__main__":
|
||
|
import argparse
|
||
|
|
||
|
parser = argparse.ArgumentParser(description="PAC web server")
|
||
|
|
||
|
parser.add_argument('-H', '--host', type=str, default="localhost",
|
||
|
help='web server host (default: localhost)')
|
||
|
parser.add_argument('-p', "--port", type=int, default=3000,
|
||
|
help='web server port (default: 3000)')
|
||
|
|
||
|
parser.add_argument('--log_level', type=LogLevel, choices=list(LogLevel), default=LogLevel.info)
|
||
|
|
||
|
parser.add_argument('-c', '--config', type=str, default="", help='config file')
|
||
|
|
||
|
args = parser.parse_args()
|
||
|
|
||
|
init(args.config or os.environ.get("PAC_CONFIG_FILE", None))
|
||
|
|
||
|
uvicorn.run(app, host=args.host, port=args.port, log_level=str(args.log_level), use_colors=True)
|