25 lines
686 B
Python
25 lines
686 B
Python
import argparse
|
|
import sys
|
|
|
|
import uvicorn
|
|
|
|
from .api import create_app
|
|
from .config import load_settings
|
|
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser(description="Local game translation API")
|
|
parser.add_argument("--config", default="config.toml")
|
|
args = parser.parse_args()
|
|
try:
|
|
settings = load_settings(args.config)
|
|
except (ValueError, OSError) as exc:
|
|
print(f"Cannot load configuration: {exc}", file=sys.stderr)
|
|
raise SystemExit(1) from exc
|
|
# One worker owns the persisted queue. Only loopback is exposed.
|
|
uvicorn.run(create_app(settings), host="127.0.0.1", port=settings.port, workers=1)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|