From 58a8504a47abd1b8bbf5e51827e27b297f1d4f06 Mon Sep 17 00:00:00 2001 From: Mischa Date: Sun, 5 Jul 2026 11:12:32 +0200 Subject: [PATCH] deploy: mirror prod env override to test (align environments) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit test had no user/env// tree because deploy/env/test/ never existed, so `make remote-apply-env-test` hit its missing-source guard and was silently skipped — test ran with twig cache off and without the gzip/Content-Encoding fix, hiding the exact class of gotcha that only surfaced in prod. Make deploy/env/test/system.yaml a symlink to deploy/env/prod/system.yaml so both deployed hosts share one override and can never drift; genericize the prod file header to say it now serves test + prod. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01Np4cMQLF77i664CAQXySzU --- deploy/env/prod/system.yaml | 11 ++++++++--- deploy/env/test/system.yaml | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) create mode 120000 deploy/env/test/system.yaml diff --git a/deploy/env/prod/system.yaml b/deploy/env/prod/system.yaml index a859bf9..efef65f 100644 --- a/deploy/env/prod/system.yaml +++ b/deploy/env/prod/system.yaml @@ -1,4 +1,8 @@ -# Production-only Grav config overrides. +# Deployed-environment Grav config overrides (test AND prod). +# +# Both server environments share this one file so test stays a faithful dress +# rehearsal of prod: deploy/env/test/system.yaml is a symlink to this file. +# Edit here and both environments move together — never let them drift. # # Deep-merged OVER the committed user/config/system.yaml via Grav's # per-environment config mechanism: on the server this file is deployed to @@ -8,9 +12,10 @@ # # These values are deliberately NOT in the committed system.yaml because they # would break local development (see CLAUDE.md §1 — dev keeps twig.cache:false -# so theme edits take effect immediately). Prod is the only place they apply. +# so theme edits take effect immediately). They apply only on the deployed +# hosts, never on a local dev checkout. # -# Deploy with: make remote-apply-env-prod +# Deploy with: make remote-apply-env-test / make remote-apply-env-prod # The user/env/ tree is outside the content repo's tracked folders, so it is # NOT restored by content-push / git-sync / remote-fetch-content — re-run the # target above after any fresh install. diff --git a/deploy/env/test/system.yaml b/deploy/env/test/system.yaml new file mode 120000 index 0000000..022f162 --- /dev/null +++ b/deploy/env/test/system.yaml @@ -0,0 +1 @@ +../prod/system.yaml \ No newline at end of file