Files
m2dev-server/deploy/systemd/bin/metin-wait-port
2026-04-14 06:36:37 +02:00

30 lines
717 B
Python

#!/usr/bin/env python3
import socket
import sys
import time
def main() -> int:
if len(sys.argv) < 3:
print("usage: metin-wait-port <host> <port> [timeout_secs]", file=sys.stderr)
return 2
host = sys.argv[1]
port = int(sys.argv[2])
timeout_secs = float(sys.argv[3]) if len(sys.argv) > 3 else 30.0
deadline = time.monotonic() + timeout_secs
while time.monotonic() < deadline:
try:
with socket.create_connection((host, port), timeout=0.5):
return 0
except OSError:
time.sleep(0.2)
print(f"Timed out waiting for {host}:{port}", file=sys.stderr)
return 1
if __name__ == "__main__":
raise SystemExit(main())