Helm CRD install mode: unclear Replace strategy sequence and storageVersion handling
0 reputation · 19 Apr 2025, 21:01 UTC
Helm CRD install mode
In Helm 3, the chart metadata field crd-install controls how CustomResourceDefinitions are processed during install and upgrade. The default CreateOnly strategy leaves existing CRDs untouched, while Replace deletes and recreates the CRD before applying the new schema.
Although the Replace option exists, the precise order of operations—whether the API server deletes the CRD first and then creates it, or performs a combined update—is not fully documented. Moreover, it is unclear whether the API server resets the storageVersion or preserves it during the replacement, and whether this behavior differs across Kubernetes API server releases.
These uncertainties affect upgrade reliability for charts that rely on schema changes.
Questions:
- What is the exact sequence of deletion and creation when
crd-install: Replaceis used? - Does the replacement process preserve or reset the CRD’s
storageVersion? - How does this behavior vary across different Kubernetes API server versions?