From df37113d382a3f446e23c0c1f6a2eaf764d8017e Mon Sep 17 00:00:00 2001 From: Marcel Date: Sat, 16 May 2026 00:01:17 +0200 Subject: [PATCH] ci(obs): add compose config dry-run before obs stack up to catch .env substitution errors Co-Authored-By: Claude Sonnet 4.6 --- .gitea/workflows/nightly.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.gitea/workflows/nightly.yml b/.gitea/workflows/nightly.yml index 0764bc03..97643ee3 100644 --- a/.gitea/workflows/nightly.yml +++ b/.gitea/workflows/nightly.yml @@ -143,6 +143,16 @@ jobs: cp -r infra/observability /opt/familienarchiv/infra/ cp docker-compose.observability.yml /opt/familienarchiv/ + - name: Validate observability compose config + # Dry-run: resolves all variable substitutions from /opt/familienarchiv/.env + # and reports any missing required keys before containers start. Catches + # truncated passwords (missing $$ escaping), undefined variables, and YAML + # errors in config files updated by the previous step. + run: | + docker compose \ + -f /opt/familienarchiv/docker-compose.observability.yml \ + config --quiet + - name: Start observability stack # Runs from /opt/familienarchiv/ so bind mounts resolve to stable # host paths that survive workspace wipes between nightly runs.