Chef and Fedora 17

I’m trying to get Chef to fire up some Fedora 17 beta AMIs on EC2. The
Fedora folks have upgraded to Ruby 1.9.3 in F17; in so doing, they’ve
rearranged stuff so that gems installed via “gem install” are dumped
in /usr/local now.

Therefore, chef-client is in /usr/local/bin, and bootstrap dies at the
end because it can’t find /usr/bin/chef-client. In my “fedora17.erb”,
I’ve already tried patching knife/core/bootstrap_context.rb with the
copy from git head, but that fails because I don’t know how to set
"@chef_config[:chef_client_path]" on the client.

Any suggestions?

  • Julian

I think you may just have to add a line like this in the client.rb
created by your bootstrap template:

chef_client_path "/usr/local/bin/chef-client"

Try adding it before or after the config_content ERB:

https://github.com/opscode/chef/blob/master/chef/lib/chef/knife/bootstrap/fedora13-gems.erb#L31-35

--
Hector

On Thu, Apr 5, 2012 at 21:26, Julian C. Dunn lists@aquezada.com wrote:

I'm trying to get Chef to fire up some Fedora 17 beta AMIs on EC2. The
Fedora folks have upgraded to Ruby 1.9.3 in F17; in so doing, they've
rearranged stuff so that gems installed via "gem install" are dumped
in /usr/local now.

Therefore, chef-client is in /usr/local/bin, and bootstrap dies at the
end because it can't find /usr/bin/chef-client. In my "fedora17.erb",
I've already tried patching knife/core/bootstrap_context.rb with the
copy from git head, but that fails because I don't know how to set
"@chef_config[:chef_client_path]" on the client.

Any suggestions?

  • Julian