From 986375d903d05f65ec1145a0b97623a6544b5e86 Mon Sep 17 00:00:00 2001 From: lingniu Date: Thu, 16 Jul 2026 01:55:21 +0800 Subject: [PATCH] test(ops): support legacy Python HTTP server --- .../deploy/verify-web-release.test.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/vehicle-data-platform/deploy/verify-web-release.test.sh b/vehicle-data-platform/deploy/verify-web-release.test.sh index 188dc341..5f8ccc31 100755 --- a/vehicle-data-platform/deploy/verify-web-release.test.sh +++ b/vehicle-data-platform/deploy/verify-web-release.test.sh @@ -24,12 +24,26 @@ printf 'old.js\n' > "$fixture/previous-assets" cp -R "$fixture/web" "$fixture/served" port=$(python3 -c 'import socket; s=socket.socket(); s.bind(("127.0.0.1", 0)); print(s.getsockname()[1]); s.close()') -python3 -m http.server "$port" --bind 127.0.0.1 --directory "$fixture/served" > "$fixture/server.log" 2>&1 & +(cd "$fixture/served" && exec python3 -m http.server "$port" --bind 127.0.0.1) > "$fixture/server.log" 2>&1 & server_pid=$! +server_ready=false for _ in $(seq 1 30); do - if curl --silent --fail "http://127.0.0.1:$port/" >/dev/null; then break; fi + if curl --silent --fail "http://127.0.0.1:$port/" >/dev/null 2>&1; then + server_ready=true + break + fi + if ! kill -0 "$server_pid" 2>/dev/null; then + cat "$fixture/server.log" >&2 + printf 'fixture HTTP server exited before becoming ready\n' >&2 + exit 1 + fi sleep 0.1 done +if test "$server_ready" != true; then + cat "$fixture/server.log" >&2 + printf 'fixture HTTP server did not become ready\n' >&2 + exit 1 +fi success_output=$("$SCRIPT_DIR/verify-web-release.sh" "$fixture/web" "http://127.0.0.1:$port" "$fixture/previous-assets") test "$success_output" = 'web_release_smoke=ok current_assets=1 compatibility_assets=1'