Habitat 0.22.0 Released

We are very happy to announce the release of Habitat 0.22.0. As usual, 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 our downloads page: https://www.habitat.sh/docs/get-habitat/ Thanks again for using Habitat!

Ruby Scaffoldings

Ruby Scaffolding is a Habitat package which helps you build your Ruby-based web applications, services, and processes (hereafter referred to as “apps”) into a package which runs consistently
on a wide range of containers, virtual machines, or servers via the Habitat Supervisor. The Supervisor will facilitate clustering, discovery of database services, dynamically update configuration and credentials, coordinate reliable rolling updates, and a lot more.

Learn all about Ruby scaffolding, and check out Quick Start instructions!

You can also watch Fletcher demo how to use scaffolding on the Habitat team’s youtube channel!

Features & Enhancements

  • Remove hab pkg exec calls from Builder Plan hooks #2239
  • Run supervisor in the background inside a studio #2131
  • hab sup status command #2118
  • The builder-scheduler should be able to recover gracefully on restart / missed notifications #2032
  • [plan-build] Introduce do_before() & do_after() build phases. #2234 (fnichol)
  • [plan-build] Rename Scaffolding load function to scaffolding_load(). #2229 (fnichol)
  • Refactor ServiceConfig into RenderContext in supervisor #2226 (reset)
  • at-once update strategy updates from local package cache as well as depot #2219 (mwrock)
  • Service butterfly decoupling #2171 (bodymindarts)
  • General quality of life improvements to Supervisor #2167 (reset)
  • [plan-build] Allow Scaffolding packages to add build deps for Plans. #2152 (fnichol)
  • Census refactoring #2141 (bodymindarts)
  • Add HAB_DOCKER_OPTS to env var docs #2140 (smith)
  • Refactor Builder Plans to leverage pkg_bind/pkg_export #2114 (reset)

Bug fixes

  • Supervisor needs to be restarted for new or update config files to be rendered #2220
  • Supervisor stops running when core/httpd is stopped #2153
  • at-once strategy kills the supervisor when new packages are not in depot #2144
  • hab sup start myorigin/myservice does not start correctly. #2110
  • health check caching incorrectly #2103
  • Supervisor exits and fails to clean-up running services #2065
  • multi-service hab-sup exits if pkg_svc_user not found #2061
  • pkg_exports values are not gossiped when updated on hab config apply #1816
  • Setup environment before determining version in plan build #2237 (reset)
  • Fix start command for builder/eventsrv plans #2233 (reset)
  • bump rumor incarnation when starting a service already in the census #2232 (mwrock)
  • Refactor ServiceConfig into RenderContext in supervisor #2226 (reset)
  • install package on load and start in the cli #2216 (mwrock)
  • remove health cache when removing service #2210 (mwrock)
  • [plan-build] Only write SVC_USER/SVC_GROUP metafiles if pkg is a svc. #2155 (fnichol)

Read the full changelog on github