Chef Client 12.6.0 Release Announcement

Ohai Chefs,

ChefSalim here, excited to be bringing you tidings of joy with a release announcement for Chef Client 12.6.0!

The happy elves at the Chef Toy Workshop have been hard at work crafting, polishing and shining all the little bits that go into a Chef release, and after a final burst of frenzied activity with debuggers hammering and profilers thumping, are pleased to be sharing the results with you!

For those that just can’t wait to tear off the wrapping paper, the download location is here.

While this technically a ‘minor’ release, it’s chock full of treats we hope you’ll enjoy.

Once you’re back from admiring the shiny contents, here are the highlights:

Upgrade to OpenSSL 1.0.1q

Gremlins were up to their usual tricks adding security vulnerabilities, which the fine folks at OpenSSL have fixed. This release picks up the latest distribution from the OpenSSL 1.0.1 branch (1.0.1q), which addresses a number of new security vulnerabilities.

New chef_version and ohai_version metadata keywords

Sometimes you might want to restrict your cookbooks to only run on certain versions of Chef – for example, when using features applicable only to those versions. In order to support this, two new keywords have been introduced to the metadata of cookbooks for constraining the acceptable range of chef-client versions that a cookbook runs on.

New --profile-ruby option

You like to go fast and so do we. The ‘chef’ gem now has new optional development support for profiling Ruby. When invoked, this option will dump a profiling graph that can be used to determine and resolve performance bottlenecks with chef-client runs.

dpkg_package now accepts an array of packages

Why only stop at one when you can have more? Similar to the yum_package and apt_package resources, the dpkg_package resource can now handle an array of package names (and also array of versions and array of sources).

New ksh resource

Having more options is good, and now we have added another option for shell support. Korn Shell scripts can now be run using the ksh resource, or by setting the interpreter parameter of the script resource to ksh.

New version of Ohai included

We recently released version 8.8.1 of Ohai, and we integrated this latest release into Chef Client as well.

For Windows users, this release contains a smorgasbord of goodness:

New FastMSI omnibus installer

Go even faster! This is the first release where we are rolling out a MSI package for Windows that significantly improves the installation time. The install time for the Chef Client on Windows has been significantly longer than other operating systems. In some cases on Windows, the Chef Client installation is now twice as fast.

windows_package resource now supports non-MSI based installers

Windows support gets even better now with more functionality moving from the Windows cookbook to being integrated directly into core Chef! With this change, installers like NullSoft, Inno Setup, InstallShield and others are now supported by the core windows_package resource.

Better handling of log_location with chef client service

You want more flexible logging capability on Windows – and with this change we allow the log location when running Chef as a Windows service to have the same level of flexibility as when running normally. This enables functionality such as being able to log to the Windows Event Log, and more.

dsc_resource changes and fixes

Last but not least, there’s literally a cornucopia of updates for dsc_resource:

  • A key limitation has been removed. Previously, you needed to disable the DSC Local Configuration Manager in order to use dsc_resource in Chef recipes. With this release (and the latest version of Windows Management Framework), this is no longer required!
  • Another benefit is that you can now use dsc_resource and dsc_script in the same recipe – this was not previously possible.
  • There is now explicit control for re-boots, with a new reboot_action property available.
  • A security fix was made to prevent plaintext credentials from showing up in logs in some cases.
  • There is also support for the Nov 2015 update of Windows 10, fixing a breakage that prevented detailed output during Chef runs. A good reason to upgrade if you are managing Windows 10 and using DSC.

As usual, there are also many other changes coming into the release with all the PRs. Consult the Release Notes and CHANGELOG for all the details.

Happy Holidays and enjoy the release!

Salim Alam
Principal Software Engineer

Salim Alam

Salim Alam is a Principal Software Engineer at Chef, and a technical lead on the Habitat team. His areas of focus include Habitat Builder, on-premises deployment, OAuth and identity, as well as cross-platform support for features such as certificate management. He has also worked across Chef on products such as Chef Client, Chef DK, and Chef Automate.