- From: Daniel DeLeo <
>
- To:
- Subject: [chef] Re: Chef 12 in ChefDK
- Date: Thu, 6 Nov 2014 10:17:34 -0800
On Wednesday, November 5, 2014 at 8:00 PM, Brian Pitts wrote:
>
Hi,
>
>
I ran into an issue [0] with ChefSpec caused by an incompatibility
>
between it and Chef 12. I was surprised to realized that ChefDK 0.3
>
bundles a number of different chef versions, including an alpha of
>
Chef 12. I tried forcing the removal of 12.0.0.alpha.2, but that broke
>
/usr/bin/chef. For now I switched away from ChefDK to get a working
>
ChefSpec and Chef combination.
>
>
Can anyone explain why ChefDK is using a prerelease version of chef
>
that isn't compatible with other gems it bundles?
ChefDK has a number of applications it ships that all have different
dependencies. Though you saw this problem with the `chef` gem, it could also
happen with RSpec, since the various apps in ChefDK are on different versions
of RSpec. Furthermore, it’s completely possible for you to install gems which
might conflict with the applications packaged in ChefDK (using `chef gem
install`). For this reason, most executables in ChefDK are generated with the
appbundler tool, which locks all dependencies to known working versions.
ChefSpec is a tricky case because it’s more or less a plugin for RSpec, but
we’re not installing RSpec itself via the appbundler process. In the future
we plan to wrap ChefSpec in a `chef test` command:
https://github.com/opscode/chef-dk/issues/18
For now you can use bundler to lock your gem versions for RSpec/ChefSpec to a
compatible set. Initializing your shell via `chef shell-init` makes this a
lot easier.
>
>
[0] https://github.com/sethvargo/chefspec/issues/518
>
>
--
>
Brian Pitts
>
Web Operations Engineer
>
Lonely Planet
--
Daniel DeLeo
Archive powered by MHonArc 2.6.16.