Spaces:
Running
Running
| set -euo pipefail | |
| python3 - <<'PY' | |
| import os | |
| import sys | |
| import time | |
| from urllib.error import URLError | |
| from urllib.request import urlopen | |
| url = os.environ.get("ES_URL", "http://127.0.0.1:9200") | |
| attempts = int(os.environ.get("ES_WAIT_ATTEMPTS", "120")) | |
| interval = float(os.environ.get("ES_WAIT_INTERVAL_SECONDS", "2")) | |
| for _ in range(attempts): | |
| try: | |
| with urlopen(url, timeout=min(1.0, max(0.1, interval))) as response: | |
| if response.status < 400: | |
| raise SystemExit(0) | |
| except (OSError, URLError): | |
| pass | |
| time.sleep(interval) | |
| print("Elasticsearch did not become ready in time", file=sys.stderr) | |
| raise SystemExit(1) | |
| PY | |