ci(validate-k3s-rabbit): exercise flux-operator's real-path deployment - #1807
Merged
Conversation
flux-operator landed on k3s-rabbit via separate PRs (#1799, #1804, #1805) while the e2e workflow PR (#1796) was still rebasing on top of them, so it never appeared in that PR's own diff and no live CI run has exercised the tier-3 real-deploy path for it here — unlike oc-ampere, where an identical comment-only touch (PR #1797, commit 66d5dfd) already forced that coverage. A comment-only touch on flux-operator's HelmRelease forces it into this PR's own DEPLOY_APPS so this run finally exercises that path. Also corrects several comments/docs that assumed k3s-rabbit deploys zero real apps by design, stale since flux-operator's addition. Safety re-verified independently this session via a fresh live `helm template` render of chart v0.57.0: zero Helm hooks, no FluxInstance object; the Deployment just starts the operator controller, which idles until a FluxInstance CR exists. k3s-rabbit's root kustomization.yaml has no flux-instance.yaml entry, so that CR is never created during an e2e run — same as oc-ampere. Signed-off-by: Daniele De Lorenzi <2905124+dark-vex@users.noreply.github.com>
dark-vex
added a commit
that referenced
this pull request
Aug 7, 2026
…ator ci(validate-k3s-rabbit): exercise flux-operator's real-path deployment
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.
Summary
flux-operatorlanded onk3s-rabbitvia separate production PRs (feat(k3s-rabbit): Add flux-operator to k3s-rabbit #1799, fix(k3s-rabbit,flux): Add missing Flux Operator helm chart #1804, fix(k3s-rabbit): Fix apps file path for flux operator #1805) while the e2e coverage PR (ci(validate-k3s-rabbit): add e2e cluster validation workflow #1796) was still rebasing on top of them. Because of that timing,flux-operatorwas present in ci(validate-k3s-rabbit): add e2e cluster validation workflow #1796's base but never in that PR's own diff — every real run of ci(validate-k3s-rabbit): add e2e cluster validation workflow #1796 printedApps to deploy: fluxcdonly. So the workflow's tier-3 real-deploy path has never actually been exercised live forflux-operatoronk3s-rabbit, unlikeoc-ampere, where an identical gap was closed via a comment-only touch (PR ci(validate-oc-ampere): add e2e cluster validation workflow #1797, commit66d5dfd4).flux-operator'sHelmReleaseso it lands in this PR's ownDEPLOY_APPS(derived fromgit diffagainstmain), forcing this run to finally exercise the tier-3 real-deploy path for it.CLAUDE.mdfiles that assumedk3s-rabbit's per-app e2e loop deploys zero apps "by design" — stale sinceflux-operatorwas added as a real, non-excluded app.Safety reasoning
flux-operatoris not invalidate-k3s-rabbit.yml'sEXCLUDED_APPS, so it resolves via tier 3 (realdeploy.yamlfallback) — the same mechanism already relied on foroc-ampere. Re-verified independently this session via a fresh livehelm templaterender of chart v0.57.0 (not just reused from the earlieroc-amperecheck): the chart produces zero Helm hooks and noFluxInstanceobject; its Deployment just starts the operator controller, which idles until aFluxInstanceCR exists.k3s-rabbit's rootkustomization.yamlstill has noflux-instance.yamlentry, so that CR is never created during an e2e run — same asoc-ampere. A parallel Codex review confirmed nok3s-rabbit-specific hazard, and confirmed the|| trueguard onflux get helmreleases -Ais generic and won't regress now that a realHelmReleasecan exist.Test plan
clusters/k3s-rabbit/apps/**path touched isflux-operator/manifests/release.yml, soDEPLOY_APPSwill resolve toflux-operatoronly.flux-operator/deploy.yaml's onlydependsOnischarts(already Ready by that point in the workflow), matching tier 3's documented assumption.charts/flux-operator.yml(theHelmRepository) exists onk3s-rabbit.validate-k3s-rabbit.ymlrun — confirmflux-operator'sKustomization/HelmReleasereachReadyvia the tier-3 real-deploy path, confirm the "Check resource deployment status" step still passes cleanly now that a realHelmReleaseexists, and confirm the job's other steps (bootstrap,GitRepository, top-levelsystem-upgrade-controller) stay green.🤖 Generated with Claude Code