Helm 2.5.0 Is Available
We are happy to announce Helm 2.5.0. This is a feature release, though it also includes many bug fixes. We strongly recommend upgrading.
The big news for Helm 2.5: We have a new documentation website! We know reading markdown in GitHub is not the best. So we have expanded the Helm.sh website to include a new documentation section.
Our latest feature for 2.5.0 is exciting even though it is still experimental: We have added experimental support for Tiller back-end plugins. Tiller plugins are created as gRPC servers that implement a gRPC interface. This feature is not enabled by default. Tiller must be started with --experimental-release to enable the feature.
The community keeps growing, and we'd love to see you there.
- Join the discussion in Kubernetes Slack:
#helm-usersfor questions and just to hang out#helm-devsfor discussing PRs, code, and bugs
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via Zoom
- Test, debug, and contribute charts: GitHub/kubernetes/charts
Installation and Upgrading
Download Helm 2.5. The common platform binaries are here:
Once you have the client installed, upgrade Tiller with helm init --upgrade.
Note: On Kubernetes 1.6, you will need to decide how to configure your RBACs for Tiller.
The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.
New Features
In addition to Tiller plugins, the following notable features have landed for 2.5.0:
- The
--setsyntax now accepts array indices:--set servers[0].port=8080 - The
-uflag tohelm packageupdates dependencies when packaging - A new
helm plugin updatecommand has been added for updating plugins - Packages can be aliased in
requirements.yaml(experimental) - Upgrading Tiller's service account is now possible via
helm init - A
--repoflag has been added to install, update, and other applicable subcommands.
Breaking Changes
Helm has strict guidelines about breaking changes, and we do our best to minimize the impact of such changes. But on occasion, we choose to change things that may cause breakages.
In this release, the following changes may cause breakages:
helm installandhelm updateno longer download remote charts to the current working directroy.helm fetchcontinues to work as it always has.- Since
--setnow accepts array indices,values.yamlkeys of the (literal) form"foo[0]"will no longer work. - A new field,
Force, was added to theUpdateReleaseRequestandRollbackReleaseRequsetgRPC calls. This will not break existing gRPC clients, but could break forks of Tiller that override existing gRPC calls.
Note: Features marked experimental may undergo major changes. These features are exempted from the usual breaking change restrictions.
What's Next
- 2.5.1 will be the first patch release in the 2.5 tree. It will contain only bug fixes.
- 2.6.0 is the next feature release. It is planned to be compatible with Kubernetes 1.7.
Changelog
- chore(*): bump to v2.5.0 012cb0a (Adam Reese)
- .tgz will now be downloaded to "$HELM_HOME/cache/archive" directory (#2558) f476f83 (Sushil Kumar)
- Add comment on resources 76e6e15 (Reinhard Nägele)
- Fix typo in command line. 8dfec4d (Julien Balestra)
- Improve 'helm create' 51923e5 (Reinhard Nägele)
- ref(tiller): cleanup goimports eccb041 (Adam Reese)
- ref(tiller): refactor out cobra from tiller a658d24 (Adam Reese)
- ref(helm): mix bag of syntax cleanup in cmd/helm b671077 (Adam Reese)
- Use versioned API types from the client-go library (#2524) 9f9b3e8 (Steven E. Harris)
- feat(helm): support array index format for --set. c01c731 (Matt Butcher)
- docs: add armada to the additional tools readme b482780 (Brandon B. Jozsa)
- chore(ci): bump go 1.8.3 2138055 (Christoph Blecker)
- update wording based on pr review 6a7a7d2 (Lachlan Evenson)
- add best practices for running tiller in namespaces a25c5a7 (Lachlan Evenson)
- fix(helm): helm home print to stdout 985dbae (Adam Reese)
- fix(tests): Fixes broken unit test 5cfb4e8 (Taylor Thomas)
- Use download manager directly 4ddd832 (Sushil Kumar)
- docs(chart_template_guide): remove discussion of blocks 38a3067 (Matt Butcher)
- fix(helm): Ensures tiller pod lands on a linux node 8a0e051 (Taylor Thomas)
- fix(helm): modify
helm repo updatehelp info c8b8c1e (willise) - ref(tiller): refactor sortManifests() 6bfb08a (Michelle Noorali)
- fix(tiller): track hooks in multi-def manifests 83c69a8 (Michelle Noorali)
- Updated docs 9b4b4dd (Sushil Kumar)
- Allow updating chart dependencies when packaging a chart 09bedff (Sushil Kumar)
- Updated docs to refer new requirements.yaml structure 0afcd0b (Sushil Kumar)
- Updated code to read requirements.yaml as per following structure 716be14 (Sushil Kumar)
- First alias would be dependency rename 541d052 (Sushil Kumar)
- fix(tiller): make GetReleaseContent return any release c913911 (Matt Butcher)
- docs(helm): fix typo af87300 (willise)
- adjust the check parameter order for uninstall d3b14db (devinyan)
- Update using_helm.md 8470495 (Rober Morales-Chaparro)
- GitHub got more fussy about markdown 7143774 (William Martin Stewart)
- fix(helm): remove unnecessary values merge in processImportValues 40052d3 (Justin Scott)
- bump download links to 2.4.2 8164f41 (Dan Bode)
- fix(docs): A couple spelling mistakes a2d559b (Cory Smith)
- Fixing mariadb spelling mistake 0b33a13 (Cory Smith)
- fix(docs): Updated non-working example in 'Using Helm' documentation 2b0a612 (Nikhil Manchanda)
- fix(tiller): Adds missing import back d9c0a8b (Taylor Thomas)
- feat(tiller): Adds more logging 119fa65 (Taylor Thomas)
- fix(plugins): exists --> exist e7a51d5 (Seth Goings)
- tests(helm): add unit tests for setting HELM_HOME faf560c (Adam Reese)
- chore(docs): generate docs 9b7d500 (Adam Reese)
- fix(helm): fix race conditions in flag parsing d797acb (Adam Reese)
- removed debug file 9cd9fc4 (Lukas Eichler)
- Added unit test for include in tpl function 439f1b3 (Lukas Eichler)
- Added storage of parsed templates in engine ce8e8d6 (Lukas Eichler)
- fix(2452): sort templates before parse 8937c77 (Matt Butcher)
- fix(helm): prepend repo URL to packages missing scheme 4c6a7cf (Matt Butcher)
- Add --force to upgrade and rollback (generated changes) a9fa928 (peay)
- Add --force to upgrade and rollback 0f26cc5 (peay)
- fix(docs): Remove "no nested globals allowed" 7c7646c (Justin Scott)
- Check existence of $HELM_HOME/plugins before installing plugin a6556b4 (Sushil Kumar)
- Added a note about alias in documentation 351dfea (Sushil Kumar)
- Added tests for alias(es) for chart dependencies 42aa81e (Sushil Kumar)
- Added tests for install/upgrade to test bad requirements.yaml f80a7aa (Sushil Kumar)
- Shallow copy existing chart details 34f9c67 (Sushil Kumar)
- Updated docs for reset changes 71c1fe2 (Sushil Kumar)
- helm reset --force would clean a failed tiller deployment 62fa6f3 (Sushil Kumar)
- Add check to ensure helm doesnt 'wait' for external services to become 'ready' b4fc1c7 (tyrannasaurusbanks)
- Rename index.md to README.md f92123b (Pierre Ozoux)
- ref(docs): remove unnecessary docs and clean up doc generator 3c97db8 (Matt Butcher)
- ref(tiller): refactor tests into logical files 04d0abf (fibonacci1729)
- ref(tiller): refactor tests into logical files 22db973 (fibonacci1729)
- Adds alias for dependencies 156d48b (Sushil Kumar)
- ref(tiller): refactor tests in logical files 172dbb2 (fibonacci1729)
- Errors out if install/upgrade fails to load-requirements 18f900e (Sushil Kumar)
- ref(tiller): refactor tiller APIs into logical files 2ae276a (fibonacci1729)
- ref(tiller): refactor tiller APIs into logical files a4d05fd (fibonacci1729)
- ref(tiller): refactor tiller APIs into logical files b5c213d (fibonacci1729)
- ref(tiller): refactor tiller APIs into logical files 62c4b15 (fibonacci1729)
- ref(tiller): breakout ReleaseServer APIs into logical files. 3b3439f (fibonacci1729)
- fix(plugins): add error when updating modified plugins 1e8ebae (Adam Reese)
- feat(*): add generic logging interface (#2394) 15254e4 (Adam Reese)
- fix(helm): fix setting home via
helm --home=HOME9832e7d (Adam Reese) - fixed fromYaml | toJson bb4be33 (lead4good)
- fix(helm): fix itermittent release testing failures 19a33b3 (Michelle Noorali)
- docs(repo_faq): create chart_repository_faq.md 4cbbbf2 (Andrew Koroluk)
- chore(glide): update to Sprig 2.12.0 23c33cf (Matt Butcher)
- fix(helm): add --devel flag to allow dev releases again 28ec923 (Matt Butcher)
- fix(Dockerfile): add ca-certificates 70f6aa4 (Matt Butcher)
- fix(windows): Updating docker/distribution 3f1c6a1 (Matt Farina)
- fix(lint): add KubeVersion and TillerVersion to linter d863d9a (Matt Butcher)
- Write repo file using atomicfile 965cb7f (Raphael Badin)
- Adds update option to plugin command (#2410) ff42dad (Sushil Kumar)
- minor typo fix 5408b60 (Kent Rancourt)
- fix(*): return non-zero exit code on test failure 488ca6f (Michelle Noorali)
- Add friendly output for helm package 346c829 (fengyun.pan)
- Return err when failed to check dependencie and save chart 15daced (fengyun.pan)
- chore(glide): bump kubernetes to v1.6.3 bbda3bc (Adam Reese)
- feat(cmd/helm/installer): add support for upgrading service account 0d3f14f (vdice)
- ref(docs): add ref as commit type f3da72b (Michelle Noorali)
- fix(tiller): Fixes bug with
--waitand updated deployments d310612 (Taylor Thomas) - Add check for getting kubeclient 7887185 (fengyun.pan)
- Fix minor typo in test doc ce12341 (Kent Rancourt)
- Return error exit-code in case of error 084bbfa (Sushil Kumar)
- Updated review comments :) 24157e4 (Sushil Kumar)
- Fixes messages for plugin remove option 1c5aab8 (Sushil Kumar)
- Errors out in case requested plugin exists c84fb11 (Sushil Kumar)
- Errors out in case requested plugin version does not exists 6344f1d (Sushil Kumar)
- Fixed issues reported by test-style 61c3a44 (Sushil Kumar)
- fix(Dockerfile): only copy tiller binary in Dockerfile fabb720 (Adam Reese)
- Updated StartLocalServerForTests to be private method d5fd75f (Sushil Kumar)
- Add comments to exported Rudder methods d9f72de (Maciej Kwiek)
- Basic Rudder Delete implementation 1c9ae55 (Maciej Kwiek)
- ReleaseServer.ReleaseModule has Status method 5937e1a (Maciej Kwiek)
- Move rudder proto to different package, add release status 52c54b0 (Maciej Kwiek)
- Define both rudder port and rudder address for different needs 3cba189 (Dmitry Shulyak)
- Use rollback method on ReleaseModule interface bd47b84 (Dmitry Shulyak)
- Run make protoc to update hapi 59af465 (Dmitry Shulyak)
- Update release proto 8b33e47 (Dmitry Shulyak)
- Implement upgrade for rudder a883531 (Dmitry Shulyak)
- Use helm version as rudder version 8ef9144 (Maciej Kwiek)
- Add experimental dockerfiles cce50f8 (Maciej Kwiek)
- Experimental Rudder implementation c1fcaf0 (Maciej Kwiek)
- Remove warnings about hook ordering guarantees 85da563 (Eduardo Baitello)
- chore(helm): fix go style issues in completion.go 9fe76d3 (Michelle Noorali)
- Add Kubernetic in related projects 47f8c1a (spiddy)
- Add new plugin helm-secrets babefd3 (Slawomir Skowron)
- Update dl links in README.md from v2.4.0 to v2.4.1 1cd4bf0 (Oli Lalonde)
- fix typo: ' instead of ` 267a091 (Hoat Le)
- added possibility to set desired install version. See issue #2380 f85118d (ReSearchITEng)
- fix(helm): reverted upgrade of imdario/mergo 0d62c3a (Rod Cloutier)
- Added tests for --repo flag for helm fetch command dce9d88 (Sushil Kumar)
- Updated defer delete call 2a5ab59 (Sushil Kumar)
- Implements --repo flag to commands fetch, install, inspect, upgrade d13b134 (Sushil Kumar)
- Fix for vbom.ml bootstrap b186250 (Maxim Ivanov)
-
- Changed error behaviour to returning an error instead of writing the error in the template - Added tests for using a function inside a template that is evaluated using the "tpl" function 2521c52 (Lukas Eichler)
- Added implementation for a tpl function that evaluates a string as a template. d01f797 (Lukas Eichler)
- Skip rendering partials b94eb82 (Fabian Ruff)