k3s-io/helm-controller

HelmChartConfig deletion is not tracked

tallaxes opened this issue · 7 comments

It appears the controller is currently silently ignoring the deletion of HelmChartConfig resource. It seems the the controller should track those, and redeploy (upgrade?) the corresponding Helm release to reflect the new desired state. Since the controller does track updates, a workaround is to update the deployed HelmChartConfig resource to one with "empty" values. But properly tracking deletions would be better, as it would match the intuitive expectations / principle of least surprise.

Isn't this a duplicate of #33 ?

@SchoolGuy: No, it is not. #33 is not very precise about exactly what deletion is failing, but it is most likely about deletion of Helm releases via deletion of HelmChart resource. This one is about removing the customization / extra values via deletion of HelmChartConfig resource - and keeping / redeploying the release.

I am using k3s-v1.21.4+k3s1. Also running into this issue. Adding a HelmChartConfig results in my k8s resources getting updated, but nothing happens when deleting it.

Taking traefik as an example.
The following things would happen when I add a HelmChartConfig

  • A Configmap in which all the Helm Values are stored is updated. The new values is appended into the Configmap. (It is chart-values-traefik in my example)
  • The helm-install Job (which is helm-install-traefik in my example) is re-created. The helm-install is re-run against the updated Configmap.
  • My k8s resources are updated expectedly.

When deleting the HelmChartConfig, nothing happens

  • The Configmap is not updated
  • The Job is not re-created
  • Nothing gets updated

I can confirm this report. Just ran into this because I changed the traefik log level to debug. After fixing my problem I removed the HelmChartConfig again.

My expectation was the traefik would be upgraded with the old log level. Instead it kept running at log level debug.