Open mecseid opened 3 years ago
Helm as a pretty rich history around this bug, and there is a possibility that the merging code we borrowed and/or drew inspiration from for our own merging operations wasn't patched at the time.
Hey @mecseid , I have been unable to reproduce this on the latest version of flux
.
flux: v0.20.1
helm-controller: v0.12.1
Can you try upgrading to flux?
Hi @SomtochiAma . Sorry for late response, I didn't have so much time to upgrade flux, until now. :)
After upgraded to v0.22.1
and helm-controller to v0.12.2
, I don't see any difference in helm values.
To check maybe an upgrade helps it, I pushed my chart to next patch version (rook v1.6.10), but I got the same result for
helm -n rook-ceph get values rook-ceph
.
Maybe am I doing something wrong?
Hey @mecseid, I have been able to reproduce this on my end and currently looking at a fix.
@somtochiama was you able to look into this further?
also waiting for a fix of this
Still happening with flux version 0.38.3
and helm-controller v0.28.1
.
Managed to workaround this by using postRenderers
with delete patches.
Still happening with flux version
0.38.3
and helm-controllerv0.28.1
. Managed to workaround this by usingpostRenderers
with delete patches.
@Xplouder can you give a short example of how you did this?
@somtochiama any news on a potential fix for this? I also got bitten by a value that didn't fall back to the Chart default when I removed my override from the values list in my HelmRelease definition. So maybe my issue is slightly different from that of the original poster 🤔
@torbjornvatn sure, needed to do this to remove the annotations, the chart did not allow to disable them in my use case:
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: matomo
spec:
releaseName: matomo
chart:
spec:
chart: matomo
version: 0.2.18
sourceRef:
kind: HelmRepository
name: bitnami
namespace: flux-system
interval: 5m0s
postRenderers:
- kustomize:
patches:
- target:
name: matomo
kind: Deployment
patch: |-
- op: remove
path: /spec/template/metadata/annotations/prometheus.io~1port
- op: remove
path: /spec/template/metadata/annotations/prometheus.io~1scrape
...
Also ran into this issue when trying to override an object like the security context:
I tried the following options:
securityContext: {}
securityContext: ~
securityContext: null
Workaround (I know that a postRenderer also works but I want to post that option here, too):
securityContext:
fsGroup: 0
runAsGroup: 0
runAsNonRoot: false
runAsUser: 0
Can we do something to get this solved? It's very hard to figure out that this a issue with the helm-controller.
It's a bit sad to see this issue not being popular enough because the use case seams to be pretty common. @somtochiama @hiddeco can we do something to get this fixed after >2 years?
I suspect this will be solved in the next minor release, as Helm v3.13.x included changes to properly reset values when they have been set to null
.
I believe you have more problems here. Currently, if you set a key under values
to null it will get stripped because the CRD has preserve-unknown-fields
but that still prunes unknown fields with a null value. I think you would need another way to indicate that a value needs to be replaced with a null when helm is invoked.
I wanted to upgrade my Rook installation with unset CPU limitation, but after the upgrade, the limitation still exists with the default value (500m). Am I doing something wrong, or it's maybe a bug?
Helm Controller version: v0.11.1 Chart: https://github.com/rook/rook/tree/v1.6.9/cluster/charts/rook-ceph
HelmRelease:
Helm values (got with helm CLI v3.2.4):