Collect stash, voyager and virtual-secrets; retire the externals step - #4
Merged
Conversation
stashed, voyagermesh and virtual-secrets each own an installer with its own update-catalog.sh and catalog/imagelist.yaml, exactly like the seven components already listed, and appscode-cloud/installer pins an anchor chart for each. Nothing was collecting them, so their images reached the release only by accident, through whichever other list happened to mention them. The six charts the externals step rendered from hack/ci values -- cert-manager, flux2, keda, keda-add-ons-http, kube-prometheus-stack, snapshot-controller -- are feature charts like any other. appscode-cloud/installer now renders them from the values their Feature actually carries and publishes the result as catalog/feature-chart-images.yaml, so collect that into images/feature-charts.yaml and stop running the externals step. Rendering from the Feature is the more accurate of the two: the curated values had drifted, building the flux2 kustomize and notification controllers that the ACE Feature disables. externals.go and hack/ci/*.yaml stay in the tree, referenced by nothing. Signed-off-by: Arnob Kumar Saha <arnob@appscode.com>
This was referenced Aug 16, 2026
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.
Two changes, one goal: every image published by exactly one collector
1. Three more component installers
stashed,voyagermeshandvirtual-secretseach own an installer with its ownhack/scripts/update-catalog.shandcatalog/imagelist.yaml, exactly like the seven already incomponents, andappscode-cloud/installerpins an anchor chart for each — all three anchor tags verified to exist on the remote:stashedstashvoyagermeshvoyagervirtual-secretsvirtual-secrets-serverNothing was collecting them, so their images reached a release only by accident, via whichever other list happened to mention them.
New outputs:
images/stashed.yaml,images/voyagermesh.yaml,images/virtual-secrets.yaml.2. The externals step is retired
cert-manager,flux2,keda,keda-add-ons-http,kube-prometheus-stackandsnapshot-controllerare feature charts like any other.appscode-cloud/installernow renders them from the values theirFeatureactually carries and publishes the result ascatalog/feature-chart-images.yaml(appscode-cloud/installer#1319);from-orgscopies that toimages/feature-charts.yaml.Rendering from the
Featureis the more accurate of the two. The curated values had drifted:So the externals step was mirroring two controllers ACE never deploys.
main.go,Makefileand the workflow no longer invoke it.pkg/collect/externals.goandhack/ci/*-ci-values.yamlstay in the tree, referenced by nothing — it still compiles, since the helpers it uses (newLayout,chartVersion) remain in use byorgs.go.What could have gone wrong, and didn't
from-orgscopied onlycatalog/imagelist.yamlper org —feature-chart-images.yamlwas not collected. Dropping the externals step without also wiring that file in would have deleted cert-manager, flux2, keda, kube-prometheus-stack and snapshot-controller fromall-images.yamlentirely. That copy is part of this PR.The externals step also recovered three images that appear only as container flags, which
image-packercould not see:kmodules/image-packer#60 now collects those directly, verified to add no false positives (
catalog/imagelist.yamlbyte-identical across all of appscode-cloud/installer's charts). With that in, the newimages/feature-charts.yamlis a superset of what the six externals files carried, minus only the two flux2 controllers ACE disables.Ordering
Land kmodules/image-packer#60, cut a release, then appscode-cloud/installer#1319, then this. Running
make collectbefore installer#1319 is merged yields nocatalog/feature-chart-images.yamlandfrom-orgsfails loudly rather than silently dropping the images.