File size: 775 Bytes
ae853c1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from __future__ import annotations

import argparse
import os


def main(argv: list[str] | None = None) -> int:
    parser = argparse.ArgumentParser(description="Serve the KEY OS Resource OS substrate.")
    parser.add_argument("--host", default=os.environ.get("HOST", "0.0.0.0"))
    parser.add_argument("--port", type=int, default=int(os.environ.get("PORT", "7861")))
    parser.add_argument("--root", default=os.environ.get("KEY_OS_ROOT", "/data/key_os"))
    parser.add_argument("--reload", action="store_true")
    args = parser.parse_args(argv)

    os.environ["KEY_OS_ROOT"] = args.root

    import uvicorn

    uvicorn.run("key_os.server:app", host=args.host, port=args.port, reload=args.reload)
    return 0


if __name__ == "__main__":
    raise SystemExit(main())