Chef Infra Client 18.4.2 Released!

We are delighted to announce the availability of version 18.4.2 of Chef Infra Client.

Improvements

  • net/http statements are now logged with the Chef debug logger (Chef::Log.debug) instead of with puts. (#13970)

New resources

  • Added the new chocolatey_installer resource which installs the Chocolatey package manager on a node.

    For additional information, see the chocolatey_installer resource documentation. (#14043)

Resource updates

  • Added the use_inline_powershell property to the powershell_script resource.
    This adds the ability to use the PowerShell DLL on Windows instead of shelling out. Thanks @jaymzjulian! (#14052)

  • Optimized Chocolatey resources when doing large numbers of operations. This includes adding the bulk_query and use_choco_list properties to the chocolatey_package resource.

    The bulk_query property batches queries and significantly reduces the load on upstream package servers.

    The use_choco_list property uses the choco list command to return Chocolatey packages instead of querying for NuGet package files. This property is false by default because querying for NuGet package files is faster than executing the choco list command.

    For more information, see the chocolatey_package resource documentation. Thanks @jaymzjulian! (#13972)

  • Added the following properties to the user_ulimit resource:

    • as_limit
    • as_soft_limit
    • as_hard_limit
    • locks_limit
    • maxlogins_limit
    • maxlogins_soft_limit
    • maxlogins_hard_limit
    • msgqueue_limit
    • msgqueue_soft_limit
    • msgqueue_hard_limit
    • cpu_limit
    • cpu_soft_limit
    • cpu_hard_limit
    • sigpending_limit
    • sigpending_soft_limit
    • sigpending_hard_limit
    • rss_limit
    • rss_soft_limit
    • rss_hard_limit

    For more information, see the user_ulimit resource documentation. Thanks @chrisminton! (#13394)

  • Added the anchor_package_regex property to the apt_package resource. This property restricts or allows apt_package to match packages by regular expression if it can't find the exact package name that's specified.
    For more information, see the apt_package resource documentation. #13873)

  • Improved debug logging output when the service resource can't enable a service. (#13959)

Resource bug fixes

  • Fixed the zypper_package resource to handle error 104 when removing a non-existent package properly. (#14150)
  • Fixed the windows_service resource, which would trigger a change on every execution if you specify a service description. (#14064) Thanks @jakauppila!
  • Fixed the chef_client_systemd_timer resource to accept integer values for a unit's CPU quota. (#14011) Thanks @blackknight36!
  • Fixed the local resource on Windows machines, which now correctly validates if locale-gen is installed. (#14014)
  • Fixed homebrew_cask, homebrew_tap, and homebrew_update resources error if Homebrew is not in the path. (#13937)
  • Fixed the chef_client_config resource which was removing permissions to the \chef directory on Windows systems. (#14173)

Dependencies

  • Updated Chef Foundation to 3.1.20. This includes loosening the package dependency chain in Solaris to allow clients with older patch versions than the Solaris builder to still be able to install. (#14183)

Security

  • Fixed an issue where sensitive items could be logged or displayed even if the sensitive attribute is set to true. (#13897)
  • Updated OpenSSL to 1.0.2zi. (#14088)

Bug fixes

  • Updated the attribute_changed event hook to handle changes in arrays. Thanks @Annih! (#13996)
  • Fixed the knife search command to correctly handle attributes with a dot, for example, a SemVer version number. (#13956)
  • Fixed chef-shell in Chef Infra Client mode when debugging a cookbook with attributes. Thanks @dafyddcrosby! (#13941)

Get the Build

As always, you can download binaries from chef.io/downloads or by using the mixlib-install command-line utility:

$ mixlib-install download chef -v 18.4.2

Alternatively, you can install Chef Infra Client using one of the following command options:

# In Shell
$ curl https://omnitruck.chef.io/install.sh | sudo bash -s -- -P chef -v 18.4.2
# In Windows Powershell
. { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex