Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save dmueller2001/1c738ee6913da6c29100d4becd3ed95d to your computer and use it in GitHub Desktop.
Save dmueller2001/1c738ee6913da6c29100d4becd3ed95d to your computer and use it in GitHub Desktop.
Major changes since Helm 2
Helm v3.0.0-alpha.1
Already supported by helm-operator
Removal of tiller
Release names scoped to namespace
Breaking changes
New import paths
New libraries to perform release lifecycle events (install, upgrade, uninstall)
Consolidation of requirements.yaml into Chart.yaml
Release name now required by default
New features
Chart values validation using JSONSchema
Library charts
Other planned changes
Lua templating
CRDs for release metadata and version storage
Upcoming Proposal
New command (e.g. helm fix <release_name>) that creates and patches resources associated with the current deployed release to ensure that they match the release manifest.
The plan is to implement as a plugin to experiment and iterate before merging into Helm project as a built-in subcommand.
Helm operator impacts
New import paths and totally rewritten Helm libraries will mean a major refactoring of the Helm operator’s reconciler.
Need to consider if it is possible and whether to maintain backwards compatibility with previous versions of helm operator.
Need to consider release name configurability. Now that Helm 3 defaults to requiring a release name, it is likely that more users will request this feature.
Will likely wait on Helm 3 before making improvements for hybrid operator developers (i.e. using Helm operator controllers in go operators, adding custom logic to helm reconciliation like mapping CR spec to values and pre- and post- lifecycle hooks to add Go code)
Open issues
Custom rendering engine to support injecting owner references
https://github.com/helm/helm/issues/5826
Better de-coupling between CLI and Helm libraries for handling Values
https://github.com/helm/helm/issues/5827
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment