Releases: helm/helm
Fixes for upgrade, rollback, and Sprig functions
The Helm 2.0.2 release is a bug fix release. No new features have been added.
- Join the discussion in Kubernetes Slack:
#helm
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via Zoom
- Test, debug, and contribute charts: GitHub/kubernetes/charts
Notable Changes Since 2.0.1
- A substantial bug with
helm upgrade -f
has been fixed - An updated Sprig library (2.7.0) has been included because it contains a substantial bug fix for
quote
helm upgrade
andhelm rollback
can both deal with failed releases now- gRPC's max message size is now 10M instead of 4M (which helps with large charts)
Version 2.0.2 is compatible with other version 2.0.x releases (client and server versions can be intermixed).
Installing and Updating
Helm binaries:
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
.
What Next?
- A 2.0.3 milestone exists, and we'll use that to capture any critical issues that come up before 2.1.0
- The 2.1.0 milestone is getting closer, and we may release early for Kubernetes 1.5 compatibility
All Changes Since 2.0.1
fix(tiller): fix spurious "no release found" errors. 9bcfa1f
fix(tiller): increase the max message size for grpc 98e0b97
fix(helm): give different error if key is not private 3cb2fd7
fix(helm): add trimSuffix to helper functions d8133cf
fix(helm): fix broken --values flag 70256d8
feat(tiller): update sprig to 2.7.0 8f2567e
fix(ci): do not push canary image on release 7d79406
Maintenance Release (Upgrade recommended)
The Helm 2.0.1 release is a bug fix release. No new features have been added.
- Join the discussion in Kubernetes Slack:
#helm
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via Zoom
- Test, debug, and contribute charts: GitHub/kubernetes/charts
Notable Changes Since 2.0.0
- Thanks to community contributions, we now have Windows builds of
helm
. - An important bug in
helm delete
has been fixed. For this reason, we recommend updating. - The parser for
--set
has been fixed, and now handles backslash escaping of characters like.
and=
.
Version 2.0.1 is compatible with version 2.0.0 (client and server versions can be intermixed).
Installing and Updating
Helm binaries:
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
.
What Next?
- A 2.0.2 release is planned, and this release will contain only bug fixes.
- New features are being added for a 2.1.0 release. Canary images are built from this branch, and are considered unstable
All Changes Since 2.0.0
fix(helm): add no-hooks to upgrade 352fea9
fix(helm): pass the no-hooks flag during upgrade 189bc43
fix(helm): improve URL comparison logic fa462a6
fix(Makefile): build windows amd64 binaries 8fd3f09
fix(tiller): validate names before performing operations a435604
fix(helm): improve --set parser 1249ffd
fix(helm): fix windows support with port forward connection in setupConnection 7853f52
fix(helm): don't pass nil-opt to ReleaseContent a29b225
Helm 2.0.0 Final
We first introduced Helm at KubeCon 2015. After a full year of development, we’re ecstatic to be releasing Helm 2.0.0. Helm is a the package manager for Kubernetes, designed to help teams collaborate on packaging, releasing, and managing applications in Kubernetes. We are excited to announce that this version of Helm has reached feature completion, and is stable for production use. 🎆
In one year, Helm has over 2,200 commits from almost 70 contributors. Numbers like that illustrate why we ❤️ the Kubernetes community. Thank you all for filing issues, chatting in Slack, submitting PRs, and contributing to the welcoming atmosphere of this project.
As we launch this release, the Helm chart repository has over two dozen charts, and we're eager to expand that catalog. Contributing charts is one of the many ways you can join in. Here are some other ways:
- Join the discussion in Kubernetes Slack:
#helm
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via Zoom
- Test, debug, and contribute charts: GitHub/kubernetes/charts
Notable Changes Since 2.0.0-RC.2
Since RC.2, only minor changes have been made. Of those, a few are notable:
- The limit on release name length has gone from 14 characters to 53 characters. For Kubernetes 1.3, users may want to manually set release names to avoid auto-generated names that are too long.
- Release upgrades now correctly remove fields deleted on manifests.
- Log entries for Tiller now show the source file from which the log message was generated.
- With
helm install --dry-run --debug
, YAML parse errors will now display the YAML data.
Installing and Updating
Helm binaries:
The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash
.
What Next?
The 2.0.0 will be followed by a series of patch releases (2.0.x). We are also beginning on the next feature release (2.1.0). In GitHub, this is represented by the branching of the repository:
---v2.0.0 --- (master) --- v2.1.x
\
\--- (v2.0.x) --- v2.0.1
- The 2.0.x branch will contain patches to the 2.0.0 release. The next release on that branch will be 2.0.1. No new features will be introduced on the 2.0.x branch, and the API will remain unchanged.
- The master branch will house continued feature development. The next release on that branch will be 2.1.0. New features will be added, but no features will be removed.
All Changes Since 2.0.0-RC.2
fix(tiller): allow release name to be up to 53 chars 9effe7a
fix(kube): fix incomplete patches generated on update df12386
docs(yaml_techniques): add YAML techniques document 3fb2feb
use openssl instead of shasum 1f17788
fix(helm): respect dryRun opt in DeleteRelease 8a13be2
feat(tiller): add source file to log entries 8740d3e
feat(gometalinter): Move to versioned releases d2fa039
fix(tls): download helm and charts over https da73150
fix(tiller): return yaml parsing errors e2ab407
fix(tiller): show failed YAML 6eabe28
feat(charts): Move bucket to domain from path 7a79661
fix(helm): helm create will not overwrite existing files 0a163a2
fix(helm): replace repo entry instead of duplicating c616bb5
docs(tiller): add docblocks to public methods 8f9b9db
docs(install_faq): add more info on socat on CoreOS 13404eb
fix(*): fix new linter errors d59f66f
fix(scripts): increase deadline for linter cf965e2
docs(install): fix deployment name in tiller delete command 9c74dae
fix(1516): use correct value reference in boilerplate NOTES.txt b3d45ae
docs(chart_template_guide): fix spacing 8857d12
Better auth, better docs, better errors
Helm 2.0.0-rc.2 is the second release candidate. As soon as we feel that the code is solid, we will release the final v2.0.0 version.
Interested in getting involved? Here are the easiest ways?
- Kubernetes Slack:
#helm
- Developer Call: Thursday, 9:30 Pacific via Zoom
- Chart Development: GitHub/kubernetes/charts
Until 2.0.0...
From here through the 2.0.0 release:
- All APIs are frozen, including Go APIs, protobuf files, and the template language
- All CLI nouns, verbs, and flags are frozen
- No features will be added
Documentation may still be changed, and bugs may be resolved. Internal refactoring may be done so long as it does not change the public APIs.
Notable Changes
- Fixed authentication when running in-cluster
helm
- Improved error handling for
helm delete
- Added a new "Chart Template Developer's Guide" to docs
Installing and Updating
Helm binaries:
The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash
.
All Changes
docs(chart_tempalte_primer): add template primer d5346b1
fix(tiller): improve deletion failure handling 3830736
ref(ci): cleanup ci deploy 7f4fd4e
fix(kube): add default client config to the loading rules 1920761
docs(code-of-conduct): redirect to official CNCF CoC 993b9a6
Almost There!
Helm v2.0.0-rc.1 is the first release candidate for the Helm 2.0.0 release. The RC phase is simply our last effort to ensure that Helm is operating as intended. As soon as we feel that the code is solid, we will release the final v2.0.0 version.
As usual, the Helm community has done a stellar job contributing issues, documentation, patches, and support. 👍 Feel free to join in! We're a growing community and value new contributions.
- Kubernetes Slack:
#helm
- Developer Call: Thursday, 9:30 Pacific via Zoom
- Chart Development: GitHub/kubernetes/charts
Until 2.0.0...
From here through the 2.0.0 release:
- All APIs are frozen, including Go APIs, protobuf files, and the template language
- All CLI nouns, verbs, and flags are frozen
- No features will be added
Documentation may still be changed, and bugs may be resolved. Internal refactoring may be done so long as it does not change the public APIs.
Notable Changes
- Kubernetes 3rd Party API objects are now enabled (had been disabled for testing)
- Kubernetes default configuration is initialized on startup (for Kubeadm)
- Password-locked GPG keys are now supported via a password prompt
helm rollback
now works across ahelm install --replace
- Many bugs were fixed
Installing and Updating
Helm binaries:
The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash
.
All Changes
feat Separate tiller into pkg and cmd so we can use tiller as a library. c0850ef
fix: Dont use privileged port in port-forward of default chart 4179282
Fix labels in NOTES.txt 5af08fa
Use chart name for container name 8527f2f
Use internal port for health check 156d706
docs(install_faq): document dnsmasq fix for kubeadm 1498461
fix(linter): remove spurious namespace error 58164e0
fix(1488): suppress gRPC logs and errors 32354be
ref(kube): add info match helper functions ab12c46
fix(pkg/chartutil): add error if chart yaml not in directory 7a054e0
ref(kube): add newBuilder function to dry up builder calls afb24d0
docs(install): add frequently asked questions d92e030
docs(charts_tips_and_tricks): SAP and Deis examples 91ff73b
fix(helm): fix tests if tmp directory is on another block device 057e4ef
fix(tiller): allow 3rd party APIs f27791c
docs(kubernetes_distros): add notes on kube distros e450754
fix(helm): add kubernetes defaults to context d2648ec
docs(chart_repository): update the repo docs 67f894b
fix(helm): fail when helm deps are not fetched 5dfbf7e
docs(install): document installer script 1e21363
fix(helm): read passphrase from prompt 9ae97c3
Remove *** from default notes 665615f
Simplify final logic block in create 2b2e1d5
feat(998): append to history on install --replace 5262e1e
docs(provenance): explain using Keybase.io 8530a8d
Fix formatting 06d9ccd
Add tests for new files in create cd34492
Add resources and probes 8d86765
Add deployment, service and NOTES to create 4120e67
chore(README): update install section for Beta.2 c324e1a
docs() fix typos in docs eba74be
Beta.2: Stability and bug fixes
This release is the second Beta release for Helm 2.0.0. Helm Beta releases do not include any new major features. But this release contains a number of important functional fixes.
Thank you to the Helm community for participating in finding issues, triaging, testing, and contributing fixes.
- Kubernetes Slack:
#helm
- Developer Call: Thursday, 9:30 Pacific via Zoom
- Chart Development: GitHub/kubernetes/charts
Notable Fixes
NOTES.txt
is now once again output correctly duringhelm install
- Helm releases are now compressed before storage
helm version --client
now prints out just the client version (and does not connect to Tiller)requirements.lock
is not regenerated ifhelm dep up
produces an identical digest.- the
--set
flag now writestrue
andfalse
values as bools instead of strings. Similarly, it writes integers and floats as numeric types instead of strings. helm serve
now regenerates the localindex.yaml
file automatically
Installing and Updating
Helm binaries:
The Quickstart Guide will get you going from there.
Moving Forward
The Helm community is continuing to improve stability and reduce the number of known issues. Our plan is to continue doing so until we believe Helm is ready for a general release, at which point we will release a 2.0.0-rc.1
.
All Changes
fix(helm): correctly convert types on --set flag c62ff7e
fix(helm): skip overwriting the lock if it hasn't changed 819ec44
feat(scripts): add 'get' script to download and install 8934eb5
fix(helm): create index file as 'helm serve' starts up. dce2079
fix(helm): use --client and --server as flags 3bf1770
docs(helm): update grammar for upgrade command help 765c1cb
fix(helm): add support for local version only ff52399
docs(provenance.md): make amendments and add clarification 741f6c8
fix(tests): prefix template names with "templates/" f97dbe3
Fix broken links in README 46d66b3
fix(tiller): correct path to NOTES.txt template d19dd9f
fix(helm): clarify that the Chart destination is still needed for subcommands 6e72351
fix(helm): add line feed between --values and --set data 973ed17
fix(helm): add check for argument length for inspection subcommands 6eb0cbb
fix(helm): use 127.0.0.1 instead of localhost 4b7e4b7
fix(helm): add dry-run flag for init 89c7815
docs(install): show tiller image upgrade option 4ad800b
Minor typo fix ed28a38
Add compression to configmap storage driver eb4b78b
docs(*): use '--namespace' instead of '-n' 0ec45ad
fix(helm): e7d81ea
fix(helm): finish repo index.html abf1ddc
Fixes for delete, rollback, update, repo index and more
This release is the first Beta release for Helm 2.0.0. Helm Beta releases do not include any new major features. But this release contains a number of important functional fixes.
Thank you to the Helm community for participating in finding issues, triaging, testing, and contributing fixes.
- Kubernetes Slack:
#helm
- Developer Call: Thursday, 9:30 Pacific via Zoom
- Chart Development: GitHub/kubernetes/charts
Notable Fixes
- Several fixes were made to
helm delete
andhelm rollback
- Documentation has been refreshed
- Three minor features were added:
- The
--kube-context
global flag was added to allow you to explicitly set the Kubernetes context. - Tiller now has gRPC tracing for debugging Tiller. This is disabled by default.
- The
helm repo add
command now fetches the repository.
- The
- The Linux builds are now static, and can run in Alpine Linux
Installing and Updating
Helm binaries:
The Quickstart Guide will get you going from there.
All Changes
fix(repo): ensure index generates in the right order ee7fe7c
fix(ci): ensure go packages are compiled before testing e11fb39
fix(tiller): ensure only the parent NOTES is used 168b17c
fix(tiller): delete all revisions with --purge 4f4be2e
fix(helm): respect kubeconfig default namespace e93d5b9
fix(helm): make 'helm repo index' generate the right index 911d322
fix(1357): print help text if revision is not specified 0daf3e4
doc(rollback): add docs for pre/post rollback hooks 0756458
fix(tiller): fix wording for a few errors 8d32bd2
fix(tiller): fix nil pointers in error messages a1f5955
fix(helm): show failed releases by default 51240d5
fix(): statically link cross builds 273e0d3
fix(helm): return correct version on dep up 84544bc
fix(kube): find current resource by name and kind a8418dd
docs(): refresh docs 627c59d
chore(docs): fix nginx example templates 8b551d4
change var naming to match helm c77e149
fix(1333): cannot delete release in failed state 264e30d
docs(helm): Fix broken link to glide project 6eb3dd1
fix(helm): make 'helm help' text punctuation consistent 29d0c33
fix(tiller): make text punctuation consistent with helm help c5557b3
fix(linter): add engine.FuncMap so linter can use real function list 36f7eb0
docs(provenance): describe signature authority 04e94c8
feat(helm): update repo by default, added --no-update
flag 16436b5
fix(lint): use correct hash key for rendered tmpl d81ac48
fix(lint): validateNoMissingValues template regex aed4db0
fix(helm): make 'helm install' output more consistent 70c453c
feat(helm): add canary option to init command 4f43007
fix(helm): allow entries to be merged into index 25c7e6d
feat(helm): add kubeconfig context switching to init command 0f5990f
docs(chart_repositories): document correct index example 491dc32
bug(tiller): correct release statuses on rollback 1ad8474
bug(tiller): set status correctly in performUpdate 57b2e64
docs(developers): require glide 0.12.0 f5c07ea
Fixed broken link from "chart.md" to "charts.md" d379eda
fix(helm): prevent 'helm history' from segfaulting 864d278
ref(): add sorter/filter utilties to releaseutil 24fe864
fix(helm): remove unused consts from client 1b5c993
fix(helm): ignore dotfiles in charts/ directories 2388e71
docs(repo): update repo index docs to show new flags 11d4a67
fix(k8s): Update to latest Kubernetes release 5accd5a
fix(Makefile): allow overriding the version for canary builds a0d3e43
feat(helm): add kubeconfig context switching a2e5778
feat(tiller): add optional grpc tracing 995f756
fix(Makefile): explicitly set bash shell in Makefile 9b91996
fix(): resolve go linter issues f71230c
ref(scripts): use gometalinter for linters 72dd427
fix(helm): make 'helm help' text punctuation consistent 7c096fb
ref(helm): add new line after repo remove msg 59229ee
ref(helm): remove old structure functions b9fb8ab
fix(tiller): when delete fails, mark release as deleted 87ab667
ref(repo): move urlJoin to the right package 4979aa0
docs(README): update download information b2b5dba
fix(tiller): correct sort manifests by type a85c37f
chore(ci): limit cross build targets 729f9b8
docs(install): Add reference to hg in install docs 3c27a07
docs(install): Add reference to glide in install docs f333bc3
fix(ci): fix ci builds reporting dirty repo ac6477c
fix(*): prevent testing package from being imported 150fb33
Fix docs regarding .Files.GetString and .Files.GetBytes 7fa5f31
fix(ci): glide cache path 5024992
Fix typo in chart docs e8f1bf4
Alpha.5: Rollback, history, UX improvements, dependency management
This is the final Helm alpha release for the 2.0.0 development cycle.
WARNING: This release is not backward compatible. We try hard to avoid compatibility breaks because we know it is an inconvenience to you. But we made a tough call: It is better to correct some of our design flaws now than force everyone to "live with them" for the entirety of the 2.0.0 lifecycle. We apologize for the inconvenience, and we don't plan on any other compatibility breaks between now and 2.0.0.
As always, we want to give a big ❤️ to the community, which has continued to find bugs, submit issues, fix things, and participate in conversations. If you'd like to be a part of the community, we invite you to join the Kubernetes Helm Slack channel, drop in on a Thursday Developer Call, and jump in on the GitHub issue queues.
- Kubernetes Slack:
#helm
- Developer Call: Thursday, 9:30 Pacific via Zoom
- Chart Development: GitHub/kubernetes/charts
Binary Downloads
Binary downloads of the Alpha.5 Helm client can be found at the following links:
The big changes:
- Introducing
helm rollback
: A command for reverting a release to a previous version. It can even undelete releases that were deleted. - Helm and Tiller now are version-aware. They can better indicate whether they are compatible. You will get compatibility errors running
helm
alpha.4 andtiller
alpha.5, for example. - Chart developers, we added a tool to help you manage chart dependencies. Check out
helm dependency install
and the newrequirements.yaml
file. - Repositories have been overhauled. To make it easier to find, install, and manage charts, we changed the format of
index.yaml
. If you run a chart repo, you should re-generate the index file! - Finally, we have worked hard to make some UX improvements:
- The
kubernetes-charts
directory was renamedstable
. Hooray for brevity. helm update
was changed tohelm repo update
helm history
is a new command to make it easy to see the history of a release.helm search
was rewritten to make it more usablehelm search
with no term will return all chartshelm search stable/
will return all charts in the repository named stable
- We dropped the requirement that you install with an explicit version number.
helm install stable/mariadb
now installs the latestmariadb
chart from thestable
repository.helm install stable/mariadb --version 0.1.0
now installs version0.1.0
(rather than the latest)- The same syntax is true for
helm inspect
,helm upgrade
, andhelm fetch
- Commands that generate listing (
search
,list
, etc.) now use the table layout by default.
- The
Changes for chart developers
In addition to the new helm dependency *
tools, we have made a few small changes in the templates. Two new functions were added:
uuidv4
generates a random UUIDv4toYaml
encodes a value into YAML
Getting Started with 2.0.0-Alpha.5
The best way to get started is to head over to the Quick Start Guide. Or for more alternative installations, see the Installation Guide.
Please let us know if you find any issues with those guides. We want Helm installation to be an easy and reliable process.
When upgrading to a new version of Tiller, we recommend using kubectl
to delete the old one: kubectl delete deployment --namespace kube-system tiller
. This will not delete your releases. From there, running helm init
will update you to the latest.
For Mac OSX
$ export HELM_OS=darwin && wget https://get.helm.sh/helm-v2.0.0-alpha.5-$HELM_OS-amd64.tar.gz && tar -zxvf helm-v2.0.0-alpha.5-$HELM_OS-amd64.tar.gz && cd $HELM_OS-amd64
For Linux
$ export HELM_OS=linux && wget https://get.helm.sh/helm-v2.0.0-alpha.5-$HELM_OS-amd64.tar.gz && tar -zxvf helm-v2.0.0-alpha.5-$HELM_OS-amd64.tar.gz && cd $HELM_OS-amd64
What's Next?
We consider Alpha.5 to be feature complete. The developers are now working on fixing bugs, improving stability, and building some great docs. This is a great time to jump in.
Our next release will be v2.0.0-beta.1
. And we will be rolling out betas until we feel like the tool is ready for production use.
Alpha.4: Persistent Storage, Improved Status, Provenance Files, and API Version Checking
Helm 2.0.0-alpha.4 is the penultimate Helm Alpha release. This new version introduces four major changes:
- ConfigMap storage is now the default backend. When you create a release with Helm, the release data will be stored in config maps in the
kube-system
namespace. This means releases are now persistent. helm status
got a much-needed overhaul, and now provides lots of useful information about the details of a release.- The Tiller server now checks the
apiVersion
field of manifests before loading a chart into Kubernetes. Now, for example, a chart that uses PetSets will stop early if it detects that the Kubernetes installation does not support PetSets. - Helm can now cryptographically verify the integrity of a packaged chart using a provenance file. To this end,
helm package
now has a--sign
flag, and several commands now have a--verify
flag.
In addition to these, the Helm community has added numerous improvements and bug fixes, including:
- Fixing a bug that prevented some installations of Alpha.3 from executing
helm list
- Limiting the length of a release name
- Adding an
icon:
field to Chart.yaml - Improving
helm lint
andhelm upgrade
Getting Started
This is the second release of Helm that includes pre-built client binaries.
To get started, download the appropriate client from the release and unpack unpack it:
For Mac OSX
$ export HELM_OS=darwin && wget https://github.com/kubernetes/helm/releases/download/v2.0.0-alpha.4/helm-v2.0.0-alpha.4-$HELM_OS-amd64.tar.gz && tar -zxvf helm-v2.0.0-alpha.4-$HELM_OS-amd64.tar.gz && cd $HELM_OS-amd64
For Linux
$ export HELM_OS=linux && wget https://github.com/kubernetes/helm/releases/download/v2.0.0-alpha.4/helm-v2.0.0-alpha.4-$HELM_OS-amd64.tar.gz && tar -zxvf helm-v2.0.0-alpha.4-$HELM_OS-amd64.tar.gz && cd $HELM_OS-amd64
To configure Helm, run the init
command:
$ ./helm init
OSX users may prefer to use Homebrew to install Helm.
What's Next
The next release, Alpha.5, marks the last major feature release before we focus on stability. You can expect to see helm rollback
implemented, along with better version support, and the addition of a dependencies:
section in Chart.yaml.
After Alpha.5, the Helm team will focus on closing bugs and improving stability as we sail toward a Helm 2.0.0 final release.
This will configure your local Helm, and also install and configure the in-cluster Tiller component.
Alpha.3: New 'helm upgrade' command and many more features
Helm v2.0.0-Alpha.3 has many new features and improvements. It marks our biggest release yet. Alpha 3 focused on bringing a number of big features into both the Helm client and the Tiller server.
The Helm team owes a tremendous debt of gratitude to our outstanding community, which has been a source of ideas, issues, fixes, features, and encouragement. Thank you!
Features
The headliner features are:
- Binary builds of the Helm client are now available!
- A new
helm upgrade
command can upgrade releases in place. We suggest using KubernetesDeployments
for maximum impact. - A vastly improved
helm status
command shows you information about the current state of your releases. - Helm now has commands for getting information about a release using
helm get
,helm get values
,helm get hooks
, andhelm get manifest
. - By default, releases are still stored in memory. But they may now optionally be stored in Kubernetes ConfigMaps instead. In subsequent releases, ConfigMaps will become the default.
- The new
helm inspect
command allows users to preview chart information before installing a chart:helm inspect kube-charts/alpine-0.1.0
- Tiller now installs into the
kube-system
namespace, but can install charts into any namespace it has write access to. - Helm supports hooks for pre-install, post-install, pre-upgrade, post-upgrade, pre-delete, and post-delete. With these, you can now attach Kubernetes jobs to release events.
Template System Changes
There have been several changes to the template system. The most important changes are:
- Extra files supplied in a chart are now accessible using the
{{.Files}}
object. For example, to load the filefoo/info.yaml
into a template, you may use{{.Files.Get("foo/info.yaml"}}
- The new
{{.Template}}
object provides access to information about the current template. - All values are accessible in templates as
{{.Values.someValue}}
. Global values are available in{{.Values.global.someValue}}
. The existing pre-defined top level template namespaces are now{{.Values}}
,{{.Files}}
,{{.Release}}
,{{.Template}}
, and{{.Chart}}
. - A new template function called
include
can now be used to import another template in place. This is preferable to the Go built-intemplate
directive.include
can be chained:{{include "foo.tpl" | indent 4}}
.
Notable Changes and Fixes
- Tiller, the Helm server, now runs as a Kubernetes Deployment instead of a Replication Controller.
- A
helm delete
now reaps related resources. So deleting aDeployment
will result in deletion of itsReplicaSet
and itsPod
s. - A release name can be re-used with
helm install --replace
. For CI/CD systems, we've also added a--name-template
flag tohelm install
to make it easier to predictably auto-generate releases. - Install values can now be passed on the command line with
helm install --set NAME=VALUE
. helm lint
now has a--strict
flag.
Numerous other bugs and fixes have been applied, and both Helm and Tiller are more stable.
For Developers
Previous versions of Helm did development using scripts/local-cluster.sh
. We now recommend using Minikube. We've also improved tooling for test coverage, CI/CD, and linting.
Coming Soon to a Cluster Near You...
The next release will be v2.0.0-alpha.4
. While Alpha 4 is largely focused on stability, a few exciting features are on the roadmap:
helm rollback
to roll back to an older version of a release.- Provenance and cryptographic integrity checks with
helm package --sign
andhelm install --verify
. - An overhaul of the Kubernetes Chart Repository (Check it out. The change is already underway!)