Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the Chef Mailing List.

Select Badges

Select Supported Platforms


chef-updater (8) Versions 1.1.1

Application cookbook which provides a custom resource for updating Chef Client.

cookbook 'chef-updater', '= 1.1.1'
cookbook 'chef-updater', '= 1.1.1', :supermarket
knife supermarket install chef-updater
knife supermarket download chef-updater
Quality 100%


Application cookbook which provides a simple recipe for updating the Chef Client package on an instance.

This cookbook supports updating a minimum Chef version of 12.1.0 and above. The inspiration for this cookbook comes from the Omnibus Updater cookbook which specifically targets the Omnitruck API for obtaining Chef client artifacts. Unfortunately those of us in the enterprise likely already have our own mechanisms for distributing packages, and most of the time they integrate very well with the operating system's package manager.

Basic Usage

Because of how this cookbook short-circuits the Chef convergence it cannot be run at the compile phase of the run. It should be included as early as possible in a node's expanded run-list in order to stop a near-immediately when the client is upgraded.


The default recipe passes in some tuning attributes to the resource/provider. These attributes should only be tweaked if you understand what you're doing. It is important to note that by default the package_source is nil. This means that the system package provider will attempt to grab it from a potential package repository (if configured).

Additionally, the package_version should be the semantic version of the Chef Client that you would like the node to be upgraded to. In the background a helper transforms this into the version necessary for the platform that the provider is operating on (e.g. 12.4.0-1.el5).

Property Type Description Default
package_name String Name of package to be upgraded. 'chef'
package_version String Version of the package to be upgraded. '12.4.0'
package_source [String, NilClass] Remote URL of where package resides. nil

Dependent cookbooks

poise ~> 2.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Foodcritic Metric

1.1.1 passed this metric