Repository navigation
ate-setup: have EnsureCRDs create only the missing CRDs - #2585
Merged
Benjamin Elder (BenTheElder) merged 1 commit intoOct 14, 2026
Merged
Benjamin Elder (BenTheElder) merged 1 commit into
Benjamin Elder (BenTheElder) merged 1 commit into
Conversation
Component redeploys call EnsureCRDs. It checked a hand-kept list of two CRDs, and if either was missing it applied the whole generated directory: every CRD plus ate-controller's RBAC. That had two problems: - Redeploying one component could rewrite the existing CRDs and the controller's RBAC as a side effect. In an upgrade to a release that adds a CRD to the list, `deploy atelet` would do this before ate-controller moves, although the upgrade runbook upgrades them together with ate-controller. - The list had already drifted. It leaves out CSIDriverConfig, so `setup csi` did not restore that CRD when it was the only one missing, and then failed to create its CSIDriverConfig. EnsureCRDs now checks every CRD in the generated directory and creates only the missing ones. The existing CRDs and the RBAC change only through DeployCRDs, which `deploy ate-system` and `deploy ate-controller` run. DeployCRDs now also waits on every CRD in the directory, so the list is gone.
Haven Xia (HavenXia)
force-pushed
the
ensure-crds-only-missing
branch
from
October 13, 2026 19:07
0b028f3 to
d95477a
Compare
Benjamin Elder (BenTheElder)
approved these changes
Oct 14, 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.
Component redeploys call
EnsureCRDs. If any CRD on a hand-kept list was missing, it applied the whole generated directory: every CRD plus ate-controller's RBAC. A component redeploy could then update the existing CRDs and RBAC ahead of ate-controller. The list had also drifted and left outCSIDriverConfig.Now:
EnsureCRDscreates only the missing CRDs. Existing CRDs and ate-controller's RBAC change only throughDeployCRDs(deploy ate-system,deploy ate-controller).deploy ate-controllerapplies it itself.Part of #1686