cozystack/internal/crdinstall
Aleksei Sviridkin 104b3b3d2b
feat(operator): add per-package upgradeCRDs policy for HelmRelease
Add an opt-in UpgradeCRDs field to ComponentInstall that maps to
HelmRelease.Spec.Upgrade.CRDs, allowing a PackageSource component to
declare how Flux should handle CRDs from the chart's crds/ directory
on upgrade.

The helm-controller default on upgrade is Skip, which means new CRDs
added between chart versions never reach existing clusters and must be
applied manually. Setting upgradeCRDs: CreateReplace makes Flux apply
new CRDs declaratively with the chart.

Allowed values are restricted to Skip, Create, CreateReplace via a
kubebuilder enum marker. Empty / unset preserves the existing Flux
default, so all existing PackageSource resources keep working.

Assisted-By: Claude <noreply@anthropic.com>
Signed-off-by: Aleksei Sviridkin <f@lex.la>
2026-04-27 11:19:29 +03:00
..
manifests feat(operator): add per-package upgradeCRDs policy for HelmRelease 2026-04-27 11:19:29 +03:00
install.go fix(operator): validate CRD apiVersion, respect SIGTERM during install 2026-02-18 00:49:56 +03:00
install_test.go fix(crdinstall): reject non-CRD objects in embedded manifests 2026-02-18 00:49:56 +03:00
manifests.embed.go fix(crdinstall): use filepath for OS paths, restrict permissions, add tests 2026-02-18 00:49:56 +03:00