Habitat 0.54.0 Released

Habitat 0.54.0 Release Notes

We are happy to announce the release of Habitat 0.54.0. We have a number of new features as well as bug fixes, so please read on for all the details. If you just want the binaries, head on over to Install Habitat. Thanks again for using Habitat!

Highlights:

  • [BREAKING CHANGE] Updates Kubernetes and Helm exporters for latest Habitat Operator version
  • [BUGFIX] Fix array access regression in template rendering
  • [BUGFIX] hab svc load respects currently-installed software
  • [BUGFIX] Download on-demand packages from the stable channel
  • [FEATURE] Added ability to pass secrets into the Studio

Updated Kubernetes and Helm exporters for latest Habitat Operator version

New versions of the Kubernetes and Helm exporters are released. The manifests generated by these versions work with version 0.5 and above of the Habitat Kubernetes Operator, but they will not work with earlier versions.

The Helm exporter now also includes the Habitat Operator in exported charts.

PR 4627: pkg-export-k8s: Adapt to Habitat Operator API changes
PR 4628: pkg-export-helm: Depend on Habitat operator chart

Fix array access regression in template rendering

A regression in how array accesses are interpreted was introduced through a dependency upgrade in the 0.52.0 release, affecting templates in the form {{foo[0]}}. This is now fixed.

PR 4620: Fix array access regression in template rendering

`hab svc load` respects currently-installed software

When starting or loading services, the Supervisor should always look for locally-installed software to run before reaching out to Builder. If a release that satisfies the package identifier given (as with, e.g. hab svc load core/redis) is found locally, no contact with Builder will be made.

There was a bug in one code branch of the hab svc load logic whereby this did not happen, meaning that the Supervisor would always try to find the software on Builder. This was particularly problematic for users trying to load services that have not been uploaded to Builder.

All start / load code paths should behave consistently now.

PR 4607: hab svc load respects currently-installed software

Download on-demand packages from the `stable` channel

We fixed a bug where the “on-demand” downloading of packages was not scoped to a channel. Since the functionality of the hab CLI tool is broken out across several Habitat packages, they are downloaded on-demand as they are needed. Due to how we version and release software, though, the impact of the bug was minimal; this fix ensures correctness going forward by strictly downloading only stable releases.

PR 4565: Download on-demand packages from the stable channel

GitHub API client now honors the HTTPS_PROXY environment variable

Previously, communication with GitHub ignored any proxies present in the environment, which made communication behind e.g. a corporate firewall impossible. Now, if HTTPS_PROXY is set, it will be used.

PR 4631: Convert github-api-client to use http-client, which respects proxies

Load secrets into the studio

Prior to this change all environment variables were scrubbed out of the studio environment. This was inconvenient when you wanted to pass in keys, passwords etc as part of your build. As of today you will be able to prefix your secret environment variables with HAB_STUDIO_SECRET to allow them to pass into the studio. Example:

HAB_STUDIO_SECRET_SSH_KEY=”some secret_key” will pass into the studio as SSH_KEY=”some secret_key”

You can see all the documented Environment Variables on our docs page.

PR 4573: Added ability to pass habitat secrets into the studio