"""Launch serve_relations with STEAM_API_KEY / SESSION_SECRET from keyzoo env. Maps KEYZOO_ASSET_SECRET_WEB_API_KEY / KEYZOO_ASSET_SECRET_SESSION_SECRET when the plain names are unset. Does not print secret values. """ from __future__ import annotations import os import subprocess import sys from pathlib import Path ROOT = Path(__file__).resolve().parents[1] def _map_env() -> None: if not (os.environ.get("STEAM_API_KEY") or "").strip(): alt = (os.environ.get("KEYZOO_ASSET_SECRET_WEB_API_KEY") or "").strip() if alt: os.environ["STEAM_API_KEY"] = alt if not (os.environ.get("SESSION_SECRET") or "").strip(): alt = (os.environ.get("KEYZOO_ASSET_SECRET_SESSION_SECRET") or "").strip() if alt: os.environ["SESSION_SECRET"] = alt def main() -> int: _map_env() steam_ok = bool((os.environ.get("STEAM_API_KEY") or "").strip()) sess_ok = bool((os.environ.get("SESSION_SECRET") or "").strip()) print(f"steam_auth configured: steam={steam_ok} session={sess_ok}", flush=True) if not steam_ok or not sess_ok: print("missing STEAM_API_KEY or SESSION_SECRET", file=sys.stderr) return 2 cmd = [sys.executable, "-u", str(ROOT / "web" / "serve_relations.py"), *sys.argv[1:]] return subprocess.call(cmd, cwd=str(ROOT)) if __name__ == "__main__": raise SystemExit(main())