mock_result_platform.py 939 B

1234567891011121314151617181920212223242526
  1. #!/usr/bin/env python3
  2. """独立启动结果接收平台,所有回执存入自己的 SQLite。"""
  3. import argparse
  4. import os
  5. from pathlib import Path
  6. import sys
  7. ROOT = Path(__file__).resolve().parents[1]
  8. sys.path.insert(0, str(ROOT))
  9. def main():
  10. parser = argparse.ArgumentParser()
  11. parser.add_argument("--port", type=int, default=8767)
  12. parser.add_argument("--db", type=Path, default=ROOT / "data/mock_result_platform.sqlite")
  13. parser.add_argument("--fail-first", type=int, default=0, help="前 N 次推送返回503,用于验证重试")
  14. args = parser.parse_args()
  15. import uvicorn
  16. from mock_result_platform.app import LOCAL_TOKEN, ResultStore, create_app
  17. app = create_app(ResultStore(args.db), token=os.getenv("MOCK_RESULT_PLATFORM_TOKEN", LOCAL_TOKEN),
  18. fail_first=max(0, args.fail_first))
  19. uvicorn.run(app, host="127.0.0.1", port=args.port)
  20. if __name__ == "__main__":
  21. main()