docker_routing_test / scripts /test_space.sh
John6666's picture
Upload 7 files
725b5d0 verified
#!/usr/bin/env bash
set -euo pipefail
if [[ -z "${SPACE_URL:-}" ]]; then
echo "ERROR: SPACE_URL is required."
echo "Example: SPACE_URL='https://username-space-name.hf.space' ./scripts/test_space.sh"
exit 1
fi
SPACE_URL="${SPACE_URL%/}"
TS="$(date -u +%Y%m%dT%H%M%SZ)"
CACHE_BUSTER="ts=${TS}"
printf '\nDocker Routing Canary public route test\n'
printf 'Space URL: %s\n' "$SPACE_URL"
printf 'UTC time: %s\n\n' "$TS"
probe() {
local path="$1"
printf '\n============================================================\n'
printf 'GET %s%s?%s\n' "$SPACE_URL" "$path" "$CACHE_BUSTER"
printf '============================================================\n'
curl -i \
--max-time 30 \
--connect-timeout 15 \
-H 'Cache-Control: no-cache' \
-H 'Pragma: no-cache' \
"${SPACE_URL}${path}?${CACHE_BUSTER}"
printf '\n'
}
probe "/"
probe "/__routing_probe"
probe "/health"
probe "/headers"
probe "/plain"
cat <<'EOF_SUMMARY'
Interpretation:
- If responses contain "source":"canary-container" and logs show CANARY_REQUEST, public traffic reached the container.
- If responses show unrelated JSON such as {"data":[]} and logs show no CANARY_REQUEST, the request likely did not reach the container.
- If the response is 404 but logs show CANARY_REQUEST, the proxy reached the container but the path is wrong.
EOF_SUMMARY