When initially creating the helm operator with helm3 in a new version (here 1.1.0, but slightly older had the issue as well), we always run into an issue. It does not create anything but the CRD and then falls apart because it thinks the CRD already exists.
Older Version, specifically 0.6, work well, and an update from there to 1.1.0 works as well.
Helm Version: 3.2.4
Kubernetes Version: 1.16.8
Message:
Error: rendered manifests contain a resource that already exists. Unable to continue with install: CustomResourceDefinition “helmreleases.helm.fluxcd.io” in namespace “” exists and cannot be imported into the current release: invalid ownership metadata; label validation error: missing key “app.kubernetes.io/managed-by”: must be set to “Helm”; annotation validation error: missing key “meta.helm.sh/release-name”: must be set to “helm-operator”; annotation validation error: missing key “meta.helm.sh/release-namespace”: must be set to “fluxcd”
Values file:
rbac:
create: true
pspEnabled: true
createCRD: true
prometheus:
enabled: true
serviceMonitor:
create: true
git:
ssh:
secretName: flux-git-deploy
pollInterval: "5m"
helm:
versions: v3
resources:
limits:
memory: 2Gi
requests:
cpu: 500m
memory: 1024Mi
chartsSyncInterval: "5m"
@hiddeco are you aware of this bug?
CRD files placed in crds/ directory directory will be installed automatically by Helm v3. The helm chart self don 't need to create CRDs (as they are already installed).
Set createCRD: false for Helm v3
You can find more info about CRDs and Helm v3 here:
https://helm.sh/docs/topics/charts/#custom-resource-definitions-crds
Most helpful comment
CRD files placed in
crds/directory directory will be installed automatically by Helm v3. The helm chart self don 't need to create CRDs (as they are already installed).Set
createCRD: falsefor Helm v3You can find more info about CRDs and Helm v3 here:
https://helm.sh/docs/topics/charts/#custom-resource-definitions-crds