diff --git a/scripts/dossiers-ngi/README.md b/scripts/dossiers-ngi/README.md index 9cbf39b..718e1ca 100644 --- a/scripts/dossiers-ngi/README.md +++ b/scripts/dossiers-ngi/README.md @@ -113,3 +113,6 @@ sudo ~/bin/caddy-apply ``` Stanza SoT: `scripts/dossiers-ngi/caddy-dossiers-ngi.snippet`. + + +Caddy edition map must list each `editions/` explicitly. A map output of `{http.request.cookie.tdpd_edition}` did not expand on Caddy v2.11.4 (only `flask` worked → 404 for `main`/views). After new tips appear, refresh the snippet map (or regenerate from `ls editions`) before `apply-dossiers-ngi-edition-switch` + `caddy-apply`. diff --git a/scripts/dossiers-ngi/caddy-dossiers-ngi.snippet b/scripts/dossiers-ngi/caddy-dossiers-ngi.snippet index 3641e72..c746406 100644 --- a/scripts/dossiers-ngi/caddy-dossiers-ngi.snippet +++ b/scripts/dossiers-ngi/caddy-dossiers-ngi.snippet @@ -27,8 +27,7 @@ header Cache-Control "private, no-cache" file_server } - # Path-root cascade stubs (feat-website-views, …) live under sites/…/cascade/ - # and must not fall through to editions/{cookie}/ (that yields 404). + # Path-root cascade stubs live under sites/…/cascade/ handle /cascade/* { root * /var/www/monitoring-sites/dossiers.ngi.hacktivism.ch header Cache-Control "private, no-cache" @@ -41,14 +40,19 @@ file_server } - # Dynamic editions: cookie value is the dir name under editions/ - # (hourly builder stages every origin/* tip as slug with / → -). - # Do not append a catch-all `~.* flask` — that forces unknown cookies - # (and can mask missing edition dirs) onto the default freeze. + # Explicit edition_dir map (placeholder map output broke on Caddy v2.11.4 — + # non-flask cookies 404'd). Refresh this list when new origin tips appear + # (branch-status rebuild creates editions//). map {http.request.cookie.tdpd_edition} {edition_dir} { - default flask - flask flask - ~^[A-Za-z0-9_-]+$ {http.request.cookie.tdpd_edition} + default flask + flask flask + feat-sm-content feat-sm-content + feat-website-design feat-website-design + feat-website-features feat-website-features + feat-website-views feat-website-views + feature-nl-net-injestion-injestor-update feature-nl-net-injestion-injestor-update + main main + project_template project_template } root * /var/www/monitoring-sites/dossiers.ngi.hacktivism.ch/editions/{edition_dir}