Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.6.2
-
None
Description
Currently, when running Chef Solo or Chef to bootstrap a node, the Chef client is manually installed. The installation process installs Ruby, RubyGems, and the Chef gems.
Since gems in ruby are automatically updated and the latest version is downloaded by default, this procedure may get broken when a backwards incompatible version of the chef-client gem is published. This can be workarouned by specifying the versions of Ruby and the Chef gems to install when creating a ChefContext or building a ChefSolo script, but still isn't strong enough.
Opscode released Omnibus, to easily install the chef-client and all its dependencies. The Omnibus installer will detect the operating system of the node and install an appropriate Ruby and RubyGems distribution compatible with the desired chef-client version in a transparent and isolated way, so it should be the preferred way to install Chef. This will simplify a lot the Chef bootstrap script and reduce considerably the points where failures can happen.
Chef installation using the gems should still be supported, for users that already have an installed Ruby or want more control on what is installed.