Alpha.5: Rollback, history, UX improvements, dependency management

10 Oct 2016

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.

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 and tiller alpha.5, for example.

Chart developers, we added a tool to help you manage chart dependencies. Check out helm dependency install and the new requirements.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 renamed stable. Hooray for brevity.
  • helm update was changed to helm 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 usable
    • helm search with no term will return all charts
    • helm 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 latest mariadb chart from the stable repository.
    • helm install stable/mariadb --version 0.1.0 now installs version 0.1.0 (rather than the latest)
    • The same syntax is true for helm inspect, helm upgrade, and helm fetch
    • Commands that generate listing (search, list, etc.) now use the table layout by default.

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 UUIDv4
  • toYaml 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-deploy. 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$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$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.

Posted in Helm, Annoucement

triangle square circle

Did you enjoy this post?