test: smoke-check the per-PR preview pipeline - #6205
Open
nicacioliveira wants to merge 2 commits into
Open
Conversation
Contributor
🔍 Preview: https://Built from Sign in: the database is empty and yours — sign up with any email What does not work in a preview
Remove the |
nicacioliveira
added a commit
that referenced
this pull request
Aug 18, 2026
…ts it (#6208) The migrate Job takes both the ConfigMap and the Secret via envFrom. The ExternalSecret was placed at wave -30 for exactly that reason, and its comment says so — but the ConfigMap got no wave at all, so it landed at the default 0, after the Job at -10. The Job is then scheduled with a configMapRef that does not exist yet, sits in CreateContainerConfigError, and the whole sync stalls waiting for the hook to complete. Nothing on any object reports a problem; the Application just says OutOfSync/Missing with 'waiting for completion of hook'. Found on the very first real preview (#6205). helm template renders but never sequences, so no amount of render assertions could have caught it — helm-test now walks every Job, Deployment and StatefulSet, resolves each envFrom source, and fails when a consumer is sequenced before something it mounts. Verified against the pre-fix chart: it flags the exact pair. Fixes the chart-managed Secret too, which had the same gap for non-ESO installs.
This was referenced Aug 19, 2026
nicacioliveira
added a commit
that referenced
this pull request
Aug 19, 2026
Argo's CreateNamespace=true creates a namespace without adopting it: no tracking annotation, never part of the Application's resource tree. So a cascading delete removed everything inside — pods, Services, HTTPRoute, ConfigMaps, and the Postgres and MinIO holding the data — and left an empty namespace behind. One per pull request that ever had a preview, accumulating quietly. Observed removing the label from #6205: every resource gone, attachedRoutes back to 0, the URL 404, and studio-pr-6205 still Active with no ownerReferences and no argocd tracking-id. The chart now renders the Namespace at wave -40, so it is owned like everything else and deleted with them. Three README files promised this behaviour already; it is now true. It also carries the Gateway's selector label, which removes a second failure: route attachment no longer depends on whoever creates the Application setting managedNamespaceMetadata correctly — the omission the troubleshooting guide calls the most likely cause of a silent 404. Chart 0.14.2 -> 0.14.3.
Trivial doc comment. Exists only to exercise the preview build, the ApplicationSet generator and the teardown path end to end for the first time. Close without merging once the preview has been verified.
The images for this PR predate #6211 and are amd64 only, so the preview died when a spot reclaim moved it onto a Graviton node.
nicacioliveira
force-pushed
the
test/preview-smoke
branch
from
August 19, 2026 02:38
398ba0c to
25d2d1c
Compare
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.
First end-to-end run of per-PR preview environments, landed earlier today in #6125 and decocms/deco-apps-cd#244.
Do not merge. The only change is a comment in
deploy/preview/README.md; this PR exists to exercise the pipeline and will be closed once verified.What this is checking
preview-build.yamlpr-<n>-<7 of head sha>, sticky comment with the URLstudio-previewspot node poolDATABASE_URLandS3_ENDPOINTpointing at the in-namespace Postgres and MinIOattachedRouteson the shared Gateway goes 0 → 1Known gaps at this point
Nothing gates the preview URL yet — no oauth2-proxy or
AuthorizationPolicy, and the record is DNS-only, so Cloudflare is not in front either. Fine for a short-lived smoke test that gets closed; not fine for sharing the link around.Hosted agent sandboxes, Google sign-in, billing, monitoring and outbound email are all out of scope for a preview by design — see
deploy/preview/README.md.Summary by cubic
Smoke-tests the per-PR preview pipeline by adding a no-op comment in
deploy/preview/README.md. Also rebuilds preview images as multi-arch to prevent failures when pods reschedule onto ARM (Graviton) nodes. Do not merge; close after verification.pr-<n>-<7-of-head-sha>and posts a sticky preview URL comment.studio-previewspot pool;DATABASE_URLandS3_ENDPOINTpoint to in-namespace Postgres/MinIO.Caveats
Written for commit 25d2d1c. Summary will update on new commits.