Fix HTTP-client integration test mock images and improve failure logging

The mock services in docker-compose.ci.yml were pinned to
golang:1.27.0-alpine, which is now too old to run against go.mod's
1.27.1 requirement (GOTOOLCHAIN=local makes this an immediate, silent
container crash: "go.mod requires go >= 1.27.1 (running go 1.27.0)").
Bump all three mock images to 1.27.1-alpine to match.

Also make `make test-http-client` dump docker compose logs (and tear
down) whenever `docker compose up --wait` itself fails, not only
after the .http test run — that path previously aborted with no
diagnostic output at all. Switch the post-run log dump to plain
`docker compose logs` (all services) instead of three hardcoded
per-service calls, which had silently omitted tunein-mock.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Tobias Gesellchen
2026-09-03 19:14:12 +02:00
co-authored by Claude Sonnet 5
parent ec02b24e8c
commit 8de3d56d4b
2 changed files with 14 additions and 9 deletions
+11 -6
View File
@@ -174,9 +174,16 @@ test-http-client-rotate:
test-http-client:
@echo "Starting services with docker compose (waiting for healthchecks)..."
@docker compose -f docker-compose.yml -f docker-compose.ci.yml up -d --build --wait
@echo "Running .http tests..."
@docker run --rm --network soundtouch-test-net \
@docker compose -f docker-compose.yml -f docker-compose.ci.yml up -d --build --wait; \
UP_EXIT_CODE=$$?; \
if [ $$UP_EXIT_CODE -ne 0 ]; then \
echo "docker compose up failed (exit $$UP_EXIT_CODE); dumping container logs:"; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml logs; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml down; \
exit $$UP_EXIT_CODE; \
fi; \
echo "Running .http tests..."; \
docker run --rm --network soundtouch-test-net \
-v "$(PWD)/tests/integration/http-client:/workdir" \
jetbrains/intellij-http-client:2026.1 \
--env-file /workdir/http-client.env.json \
@@ -236,9 +243,7 @@ test-http-client:
/workdir/unregister_device.http \
--report; \
EXIT_CODE=$$?; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml logs soundtouch-service; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml logs spotify-mock; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml logs amazon-mock; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml logs; \
docker compose -f docker-compose.yml -f docker-compose.ci.yml down; \
exit $$EXIT_CODE
+3 -3
View File
@@ -35,7 +35,7 @@ services:
start_period: 3s
spotify-mock:
image: golang:1.27.0-alpine
image: golang:1.27.1-alpine
container_name: spotify-mock
working_dir: /app
volumes:
@@ -53,7 +53,7 @@ services:
start_period: 3s
amazon-mock:
image: golang:1.27.0-alpine
image: golang:1.27.1-alpine
container_name: amazon-mock
working_dir: /app
volumes:
@@ -71,7 +71,7 @@ services:
start_period: 3s
tunein-mock:
image: golang:1.27.0-alpine
image: golang:1.27.1-alpine
container_name: tunein-mock
working_dir: /app
volumes: