ci: e2e — static in-network IP for the app (bypass DNS) + post-deploy chromium diagnostics

This commit is contained in:
2026-09-19 07:53:22 +00:00
parent 0bfbd2a2e8
commit e694011302
5 changed files with 60 additions and 18 deletions
+4 -1
View File
@@ -1,7 +1,9 @@
# Isolated e2e stack for CI (.gitea/workflows/ci.yml) — runs on the runner's shared dind
# daemon under project name flight-ci (distinct from production). Joins the external
# network flight-ci-e2e that the workflow attaches the job container to; the app is reached
# via service DNS as http://app:3000 (alias declared below) — no host port mapping needed.
# at its STATIC IP http://172.39.0.10:3000 — DNS bypassed for the browser because Chromium
# got ERR_SSL_PROTOCOL_ERROR via the hostname while node-side HTTP worked (the `app` alias
# stays as a convenience). Single deterministic address; survives `docker compose restart flight`.
# The build context is tarred by the compose client in the job and sent over DOCKER_HOST,
# so nothing here needs to be visible from inside dind; game state lives in a named volume
# (fresh per run — CI cleanup removes it — survives `docker compose restart flight` for
@@ -18,6 +20,7 @@ services:
flight-ci-e2e:
aliases:
- app
ipv4_address: 172.39.0.10
networks:
flight-ci-e2e: