fix: extract create-gateway mini-chart for delayed CRs#481
Open
emmanuel wants to merge 3 commits into
Open
Conversation
josmo
approved these changes
Jun 27, 2026
emmanuel
marked this pull request as ready for review
June 30, 2026 07:16
Helm only renders manifests under templates/ (plural). As template/, the chart rendered zero resources, so the create-gateway Argo Application synced Healthy while creating none of its GatewayClass/EnvoyProxy CRs. Verified with helm template that the CRs now render.
Set SkipDryRunOnMissingResource=true at the Application syncPolicy level so the Gateway CRs don't fail ArgoCD's server-side dry-run when their CRDs aren't registered yet (bootstrap). Drop the now-redundant commented per-CR annotations.
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.
What
Extracts the Envoy Gateway custom resources (
GatewayClass,EnvoyProxy) out of the main envoy-gateway install into a standalonecreate-gatewayHelm chart, delivered as its own ArgoCD Application. Those CRs then get created independently once ArgoCD is up and the Gateway API / Envoy Gateway CRDs have been installed by thegateway-helmApplication — instead of failing/blocking the main install at bootstrap when the CRDs don't exist yet.Commits
8d9a7e6— extract thecreate-gatewaymini-chartac092a7— fix render bug: the chart's manifests were undertemplate/(singular), but Helm only renderstemplates/. As-is the chart rendered zero resources, so the Application would have synced Healthy while creating none of the CRs. Renamedtemplate/→templates/.320a98e— enableSkipDryRunOnMissingResource=trueat the ApplicationsyncPolicylevel so the CRs skip ArgoCD's server-side dry-run when their CRDs aren't registered yet, and apply cleanly once they are (removes the now-redundant commented per-CR annotations).Testing
Static —
helm templatenow renders both CRs (EnvoyProxy eg-proxy+GatewayClass eg) with correctnlbNamesubstitution andparametersReflinkage.End-to-end — disposable
kind+ ArgoCD, CRDs initially absent, same chart run through two Applications differing only in the sync option:SkipDryRunOnMissingResourcesynchronization tasks are not validno matches for kind EnvoyProxy(transient)GatewayClass eg+EnvoyProxy eg-proxy✅With the option set, once the CRDs land the Application converges on its own with no manual intervention.