CLI entry point
()
| 832 | |
| 833 | |
| 834 | def main() -> None: |
| 835 | """CLI entry point""" |
| 836 | parser = argparse.ArgumentParser(description="Unity Bridge Relay Server") |
| 837 | parser.add_argument( |
| 838 | "--host", |
| 839 | default=DEFAULT_HOST, |
| 840 | help=f"Host to bind to (default: {DEFAULT_HOST})", |
| 841 | ) |
| 842 | parser.add_argument( |
| 843 | "--port", |
| 844 | type=int, |
| 845 | default=DEFAULT_PORT, |
| 846 | help=f"Port to listen on (default: {DEFAULT_PORT})", |
| 847 | ) |
| 848 | parser.add_argument( |
| 849 | "--debug", |
| 850 | action="store_true", |
| 851 | help="Enable debug logging", |
| 852 | ) |
| 853 | parser.add_argument( |
| 854 | "--reload-grace-period", |
| 855 | type=int, |
| 856 | default=RELOAD_GRACE_PERIOD_MS, |
| 857 | metavar="MS", |
| 858 | help=f"Grace period (ms) before removing reloading instance (default: {RELOAD_GRACE_PERIOD_MS})", |
| 859 | ) |
| 860 | |
| 861 | args = parser.parse_args() |
| 862 | |
| 863 | # Setup logging |
| 864 | log_level = _resolve_log_level(args.debug) |
| 865 | _setup_logging(log_level) |
| 866 | |
| 867 | # Run server |
| 868 | try: |
| 869 | asyncio.run( |
| 870 | run_server( |
| 871 | args.host, |
| 872 | args.port, |
| 873 | reload_grace_period_ms=args.reload_grace_period, |
| 874 | ) |
| 875 | ) |
| 876 | except KeyboardInterrupt: |
| 877 | pass |
| 878 | |
| 879 | |
| 880 | if __name__ == "__main__": |
no test coverage detected