helm-operator icon indicating copy to clipboard operation
helm-operator copied to clipboard

Helm operator won't remove initContainer(s) from a deployment

Open Gui13 opened this issue 4 years ago • 1 comments

Describe the bug

An operator in the cluster added initContainers to one deployment managed by a Helm chart/Helm release for data restoration purposes A new helm release was pushed with a new chart version where these initContainers don't exist and a new configuration value The deployment was not updated to remove these containers (although the new value was correctly inserted)

To Reproduce

Steps to reproduce the behaviour:

  1. Install a helm release that refers to a chart that has a deployment
  2. Manipulate the deployment through kubectl and patch it to add initContainers
  3. Helm operator won't automatically revert those changes to the deployment, even though the init containers are not part of the original chart
  4. Deploying a new release with new chart version and new deployment values is not sufficient

Workaround:

  • delete the deployment where the initContainers are inserted
  • push a dummy change in the helm release to trigger a new Helm Operator publication of the chart (because of #497 )

Expected behavior

Helm operator should remove the init containers eventually (when it performs a recurring check of its deployed charts?)

Logs

Additional context

  • Helm Operator version: 1.1.0
  • Kubernetes version: 1.15
  • Git provider: Azure Devops
  • Helm repository provider: Azure CR

Gui13 avatar Jul 22 '20 10:07 Gui13

Cluster-state mutations are out-of-scope for the Helm Operator at the moment. As described in the feature list:

Detection and recovery from Helm storage mutations (e.g. a manual Helm release that was made but conflicts with the declared configuration for the release)

From: https://docs.fluxcd.io/projects/helm-operator/en/stable/#features

hiddeco avatar Jul 22 '20 11:07 hiddeco

Sorry if your issue remains unresolved. The Helm Operator is in maintenance mode, we recommend everybody upgrades to Flux v2 and Helm Controller.

A new release of Helm Operator is out this week, 1.4.4.

We will continue to support Helm Operator in maintenance mode for an indefinite period of time, and eventually archive this repository.

Please be aware that Flux v2 has a vibrant and active developer community who are actively working through minor releases and delivering new features on the way to General Availability for Flux v2.

In the mean time, this repo will still be monitored, but support is basically limited to migration issues only. I will have to close many issues today without reading them all in detail because of time constraints. If your issue is very important, you are welcome to reopen it, but due to staleness of all issues at this point a new report is more likely to be in order. Please open another issue if you have unresolved problems that prevent your migration in the appropriate Flux v2 repo.

Helm Operator releases will continue as possible for a limited time, as a courtesy for those who still cannot migrate yet, but these are strongly not recommended for ongoing production use as our strict adherence to semver backward compatibility guarantees limit many dependencies and we can only upgrade them so far without breaking compatibility. So there are likely known CVEs that cannot be resolved.

We recommend upgrading to Flux v2 which is actively maintained ASAP.

I am going to go ahead and close every issue at once today, Thanks for participating in Helm Operator and Flux! 💚 💙

kingdonb avatar Sep 02 '22 19:09 kingdonb