#!/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)