ci(docs): publish from development, and retire the old hostname - #392
Merged
Conversation
Two independent faults, either of which alone stops the docs site updating. TRIGGER. This listened on a branch called `documentation`. Nobody has pushed to one since 2026-05-25, so every docs change merged to `development` passed review and published nothing. SECRETS. A reusable workflow receives no secrets by default. With none mapped, the callee's publish step finds CF_API_TOKEN empty and skips itself on its own guard, and the run finishes GREEN having changed nothing. Fixing only the trigger would have produced exactly that. The worker name is now pinned. Deriving it is the documented way to get a green run that reaches nobody: wrangler creates the derived worker and publishes there while the custom domains keep routing to the real one. Where the app was renamed, `canonical-host` turns the retired hostname from a second live copy of every page into a 301 to the same path on the current one.
rubenvdlinde
requested review from
Rem-Dam,
SudoThijn,
WilcoLouwerse,
bbrands02,
remko48 and
rjzondervan
as code owners
August 29, 2026 11:45
Contributor
Quality Report — ConductionNL/launchpad @
|
| Check | PHP | Vue | Security | License | Tests |
|---|---|---|---|---|---|
| lint | ✅ | ||||
| phpcs | ✅ | ||||
| phpmd | ✅ | ||||
| psalm | ✅ | ||||
| phpstan | ✅ | ||||
| phpmetrics | ✅ | ||||
| eslint | ✅ | ||||
| stylelint | ✅ | ||||
| build | ✅ | ||||
| check-manifest | ✅ | ||||
| format | ✅ | ||||
| check-schema-l10n | ✅ | ||||
| composer | ✅ | ✅ 104/104 | |||
| npm | ✅ | ✅ 539/539 | |||
| app:check-code | ⏭️ | ||||
| info.xml | ✅ | ||||
| REUSE | ❌ | ||||
| PHPUnit | ✅ | ||||
| Newman | ✅ | ||||
| Playwright | ✅ | ||||
| Hydra gates | ✅ |
Quality workflow — 2026-08-29 12:43 UTC
Download the full PDF report from the workflow artifacts.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings this app's documentation deploy up to the shape that actually publishes, and — where the app was renamed — turns the retired hostname into a redirect instead of a duplicate site.
Why the site was stale
Two independent faults, either of which alone stops the site updating:
The trigger. This workflow listened on a branch called
documentation. Nobody has pushed to one since 2026-05-25, so every docs change merged todevelopmentsatisfied its review and published nothing.The secrets. A reusable workflow receives no secrets by default. With none mapped, the callee's publish step finds
CF_API_TOKENempty, skips itself on its ownif:guard, and the run finishes green having changed nothing. Fixing only the trigger would have produced exactly that.The worker name is now pinned. Deriving it is the documented way to get a green run that reaches nobody — wrangler creates the derived worker and publishes there while the custom domains keep routing to the real one.
The redirect (renamed apps only)
docs-hostskeeps the retired hostname answering, which is what stops old links breaking. On its own it also leaves two live copies of every page, so the retired app name stays as discoverable as the current one — measured across the fleet: all 13 renamed apps answered 200 on both hostnames and none redirected.canonical-host(added in ConductionNL/.github#635) makes every non-canonical host answer 301 to the same path and query on the canonical one. Deep links and query strings survive.Verification
The generated file is asserted before commit: triggers on
development, mapsCF_API_TOKEN, pinsworker-name. After merge I check the live site, not the run colour — the callee's own "Verify the LIVE site serves this build" step compares only the homepage<title>, which does not change when a page is added, so it reports success either way.