Skip to content
This repository has been archived by the owner on Nov 1, 2022. It is now read-only.

A new release is created in every cycle when using semver chart versions #469

Closed
gmaiztegi opened this issue Jun 24, 2020 · 2 comments · Fixed by #490
Closed

A new release is created in every cycle when using semver chart versions #469

gmaiztegi opened this issue Jun 24, 2020 · 2 comments · Fixed by #490
Labels
blocked needs validation In need of validation before further action bug Something isn't working

Comments

@gmaiztegi
Copy link

Describe the bug
We set our chart versions to something like ^1.0.0 so that if a new chart version, for example, 1.1.0 comes up, it is automatically installed on the next cycle. Updating works fine, but even when there are no new charts in the repository, a new Helm revision is created.

We have around 75 HelmReleases I believe this is making our update cycles slower and consume way more resources than it normally should (that is, when just performing dry-run checks).

Can this behaviour be fixed?

To Reproduce
Steps to reproduce the behaviour:

  1. Create a HelmRelease with the chart version set to a semver, such as ^1.0.0.
  2. Wait for it to correctly install and get the revision number with helm list.
  3. Wait for a few minutes and don't change anything.
  4. Check the new revision number with helm list.
  5. It should increment every update cycle.

Expected behavior
I would expect to only have new releases whenever there is actually a new chart version or any values changed. When nothing changed, the dry-run should just detect that there is nothing to do.

Logs

This is a normal dry-run without the semver chart version, with release diff logging on:

ts=2020-06-24T09:49:15.031213929Z caller=release.go:75 component=release release=my-release targetNamespace=default resource=default:helmrelease/my-release helmVersion=v3 info="starting sync run"
ts=2020-06-24T09:49:15.620748196Z caller=release.go:251 component=release release=my-release targetNamespace=default resource=default:helmrelease/my-release helmVersion=v3 info="running dry-run upgrade to compare with release version '2422'" action=dry-run-compare
ts=2020-06-24T09:49:15.623202838Z caller=helm.go:69 component=helm version=v3 info="preparing upgrade for my-release" targetNamespace=default release=my-release
ts=2020-06-24T09:49:15.65476709Z caller=helm.go:69 component=helm version=v3 info="resetting values to the chart's original version" targetNamespace=default release=my-releaser
ts=2020-06-24T09:49:16.618472957Z caller=helm.go:69 component=helm version=v3 info="performing update for my-release" targetNamespace=default release=my-release
ts=2020-06-24T09:49:16.624978865Z caller=helm.go:69 component=helm version=v3 info="dry run for my-release" targetNamespace=default release=my-release
ts=2020-06-24T09:49:16.839329676Z caller=release.go:273 component=release release=my-release targetNamespace=default resource=default:helmrelease/my-release helmVersion=v3 info="no changes" phase=dry-run-compare

This is a release being updated with a semver chart version:

ts=2020-06-24T09:49:20.731573772Z caller=release.go:75 component=release release=other-release targetNamespace=default resource=default:helmrelease/other-release helmVersion=v3 info="starting sync run"
ts=2020-06-24T09:49:21.811046896Z caller=release.go:289 component=release release=other-release targetNamespace=default resource=default:helmrelease/other-release helmVersion=v3 info="running upgrade" action=upgrade
ts=2020-06-24T09:49:22.416884415Z caller=helm.go:69 component=helm version=v3 info="preparing upgrade for other-release" targetNamespace=default release=other-release
ts=2020-06-24T09:49:22.510734597Z caller=helm.go:69 component=helm version=v3 info="resetting values to the chart's original version" targetNamespace=default release=other-release
ts=2020-06-24T09:49:23.624070522Z caller=helm.go:69 component=helm version=v3 info="performing update for other-release" targetNamespace=default release=other-release
ts=2020-06-24T09:49:23.720720938Z caller=helm.go:69 component=helm version=v3 info="creating upgraded release for other-release" targetNamespace=default release=other-release
ts=2020-06-24T09:49:23.953028437Z caller=helm.go:69 component=helm version=v3 info="checking 3 resources for changes" targetNamespace=default release=other-release
ts=2020-06-24T09:49:23.957636049Z caller=helm.go:69 component=helm version=v3 info="Looks like there are no changes for ServiceAccount \"other-release\"" targetNamespace=default release=other-release
ts=2020-06-24T09:49:23.965091594Z caller=helm.go:69 component=helm version=v3 info="Looks like there are no changes for Service \"other-release\"" targetNamespace=default release=other-release
ts=2020-06-24T09:49:24.031669703Z caller=helm.go:69 component=helm version=v3 info="updating status for upgraded release for other-release" targetNamespace=default release=other-release
ts=2020-06-24T09:49:24.239864219Z caller=release.go:309 component=release release=other-release targetNamespace=default resource=default:helmrelease/other-release helmVersion=v3 info="upgrade succeeded" revision=^0.4.0 phase=upgrade

Additional context
Add any other context about the problem here, e.g

  • Helm Operator version: 1.1.0
  • Targeted Helm version: v3
  • Kubernetes version: v1.16.8-eks-e16311
  • Git provider: Github (although I guess it's not applicable here)
  • Container registry provider: Harbor
@gmaiztegi gmaiztegi added blocked needs validation In need of validation before further action bug Something isn't working labels Jun 24, 2020
@avielb
Copy link
Contributor

avielb commented Jul 5, 2020

same thing here.
helm operator 1.1.0
eks 1.16
Container registry provider: artifactory

@gmaiztegi downgrade helm operator to 1.0.2 for now seems to solve the issue

@gmaiztegi
Copy link
Author

@avielb downgrading did the trick, thanks!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
blocked needs validation In need of validation before further action bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants