What’s interesting here is that the dependency is not for some 3rd
party package, but for chef itself. chef-client is using the
route53 recipe, which is using the fog gem, which is using the json
gem. A new json gem does get installed during the chef run. But at
the time chef-client started, it wasn’t yet there. Perhaps the
chef-client’s ruby process won’t re-read and use new gems during that
single chef run. It simply must run a second time. not sure if
that’s the case.
I think this scenario is the exact type of situation the omnibus installs
are trying to prevent.
On Wednesday, May 8, 2013, Sam Darwin wrote:
What's interesting here is that the dependency is not for some 3rd
party package, but for chef itself. chef-client is using the
route53 recipe, which is using the fog gem, which is using the json
gem. A new json gem does get installed during the chef run. But at
the time chef-client started, it wasn't yet there. Perhaps the
chef-client's ruby process won't re-read and use new gems during that
single chef run. It simply must run a second time. not sure if
that's the case.
--
~~ StormeRider ~~
"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."
(from Smallville Season 6x1: "Zod")
On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS
I just ran into this very same problem starting this week, using the route53
recipe. Does anyone know of a solution yet? My route53 recipe does this:
fog = chef_gem "fog" do
action :nothing
end
fog.run_action( :install )
require 'rubygems'
Gem.clear_paths
I see no where else in my recipes where a json gem gets installed by any chef
resource, in case that might be affecting this.
To be clear, this is the error my clients are failing with upon birth. A
second chef-client run succeeds :\
[2013-05-07T19:14:34+00:00] DEBUG: Gem::LoadError: route53_record[chef-ci-webapp01c.dev.pickameme.com] (resolver::default line 130) had an error: Gem::LoadError: Unable to activate fog-1.11.1, because json-1.5.4 conflicts with json (~> 1.7)
On Wed, 08 May 2013, Morgan Blackthorne wrote:
I think this scenario is the exact type of situation the omnibus installs
are trying to prevent.On Wednesday, May 8, 2013, Sam Darwin wrote:
What's interesting here is that the dependency is not for some 3rd
party package, but for chef itself. chef-client is using the
route53 recipe, which is using the fog gem, which is using the json
gem. A new json gem does get installed during the chef run. But at
the time chef-client started, it wasn't yet there. Perhaps the
chef-client's ruby process won't re-read and use new gems during that
single chef run. It simply must run a second time. not sure if
that's the case.--
~~ StormeRider ~~
"Every world needs its heroes [...] They inspire us to be better than we
are. And they protect from the darkness that's just around the corner."(from Smallville Season 6x1: "Zod")
On why I hate the phrase "that's so lame"... http://bit.ly/Ps3uSS
On Wed, 08 May 2013, kallen@groknaut.net wrote:
I just ran into this very same problem starting this week, using the route53
recipe. Does anyone know of a solution yet? My route53 recipe does this:fog = chef_gem "fog" do action :nothing end fog.run_action( :install ) require 'rubygems' Gem.clear_paths
I see no where else in my recipes where a json gem gets installed by any chef
resource, in case that might be affecting this.To be clear, this is the error my clients are failing with upon birth. A
second chef-client run succeeds :\[2013-05-07T19:14:34+00:00] DEBUG: Gem::LoadError: route53_record[chef-ci-webapp01c.dev.pickameme.com] (resolver::default line 130) had an error: Gem::LoadError: Unable to activate fog-1.11.1, because json-1.5.4 conflicts with json (~> 1.7)
Forgot to mention, my clients are chef-10.24.0-1.el6, omnibus.
kallen
ok, looks like next release of fog will fix this.
On Wed, May 8, 2013 at 9:33 PM, kallen@groknaut.net wrote:
On Wed, 08 May 2013, kallen@groknaut.net wrote:
I just ran into this very same problem starting this week, using the route53
recipe. Does anyone know of a solution yet? My route53 recipe does this:fog = chef_gem "fog" do action :nothing end fog.run_action( :install ) require 'rubygems' Gem.clear_paths
I see no where else in my recipes where a json gem gets installed by any chef
resource, in case that might be affecting this.To be clear, this is the error my clients are failing with upon birth. A
second chef-client run succeeds :\[2013-05-07T19:14:34+00:00] DEBUG: Gem::LoadError: route53_record[chef-ci-webapp01c.dev.pickameme.com] (resolver::default line 130) had an error: Gem::LoadError: Unable to activate fog-1.11.1, because json-1.5.4 conflicts with json (~> 1.7)
Forgot to mention, my clients are chef-10.24.0-1.el6, omnibus.
kallen