What Is New in Helm 2.10 – Quick Overview
| Category | Highlights |
|---|---|
| New Features |
|
| Improvements |
|
| Bug Fixes |
|
| Security / Compatibility |
|
What are the major change groups in Helm 2.10?
CLI Enhancements
- Search output can now be constrained with
--col-width. - Release operations accept a human‑readable description via
--description. - TLS connections expose
--tls-hostnameto control hostname verification. - Explicit kubeconfig selection with
--kubeconfigsimplifies multi‑cluster workflows.
Dependency & Chart Handling
helm install --dep-upnow correctly applies updated chart dependencies.- Null and boolean values are accurately coerced when using
--setor--set-string. - Sprig functions are refreshed to v2.15.0, giving templates more utilities.
Namespace & Labeling
- When a namespace is created via
helm install --namespace, Helm injects anamelabel matching the release name.
Plugin System Improvements
- Plugins can now read input from
stdin, enabling more flexible data pipelines. - Exit codes from plugins are propagated unchanged, allowing scripts to react appropriately.
- The
--tiller-namespaceflag works correctly for plugin commands.
Tiller Runtime Adjustments
- Tiller’s container image now runs as the unprivileged
nobodyuser, reducing surface area for privilege escalation. - Various crash‑path bugs (e.g., empty releases list, Windows path handling) have been patched.
FAQ
How does the new --description flag affect release history?
The flag stores a free‑form note alongside the release record. It shows up in helm history and can be queried with helm get, making it easier to track why a particular version was deployed.
Can I still use helm init with the upgraded Tiller image?
Yes. After upgrading the client, run helm init --upgrade. The new image runs as nobody, so you may need to adjust any custom security policies that assumed a root user.
What is the impact of the --tls-hostname flag?
It forces Helm to verify the TLS server name against the certificate’s SAN. This is useful when Tiller is behind a reverse proxy that presents a different hostname than the service name.
Do the changes to --set and --set-string affect existing charts?
Existing charts continue to work, but you now get correct null handling and string coercion. If a chart relied on the previous loose conversion, you may see slightly different rendered values – usually a more accurate result.
How do plugins read from stdin and why would I need it?
A plugin can now accept piped data (e.g., cat values.yaml | helm plugin run myplugin). This enables one‑liner workflows and integration with other CLI tools without writing temporary files.