[chef] Re: Building a basic Rails-Stack with Chef-Solo/Berkshelf


Chronological Thread 
  • From: Cassiano Leal < >
  • To:
  • Subject: [chef] Re: Building a basic Rails-Stack with Chef-Solo/Berkshelf
  • Date: Mon, 25 Feb 2013 09:02:29 -0300

I had a similar problem before, but with RVM instead of rbenv.

The problem was that I had switched the ruby to the RVM one, and my VM had chef installed on its own ruby.

Fletcher Nichol's RVM cookbook [0] (the one I'm using) works around the problem with a 'vagrant' recipe [1] which I add to my Vagrant VMs run_list and point to chef-client's executable. You might be able to use that as a starting point.

A workaround that *might* work is to add the chef gem to the rbenv managed ruby on the first conversion.


[0] https://github.com/fnichol/chef-rvm
[1] https://github.com/fnichol/chef-rvm/blob/master/recipes/vagrant.rb

- cassiano

On Monday, February 25, 2013 at 08:02, Patrick Mulder wrote:

Hello,

I am working on a basic Rails stack with Berkshelf that I would like to present at  http://wrocloverb.com/ if things work out. Basically, my goal is to have a:

 berks install
 vagrant up

and get a running Rails stack that would be easy to customize (e.g. switching the database like MySQL, Postgres, Mongo, Arangodb, ... )

As a start, I took the chef-solo/Rails stack from this repository:  https://github.com/excid3/chef-rails-stack

Then, I removed some cookbook dependencies by applying Berkshelf.

So far, my setup is now:



But since the stack above uses rbenv (which I think is interesting for testing different VM baseboxes), I am running into a gem problem.

The first provisioning works fine, however I am running into a dependency problem, that I don't understand how to solve:

/opt/ruby/lib/ruby/gems/1.8/gems/chef-10.18.2/bin/../lib/chef/application/solo.rb:224:in `run_application'
/opt/ruby/lib/ruby/gems/1.8/gems/chef-10.18.2/bin/../lib/chef/application/solo.rb:216:in `loop'
/opt/ruby/lib/ruby/gems/1.8/gems/chef-10.18.2/bin/../lib/chef/application/solo.rb:216:in `run_application'
/opt/ruby/lib/ruby/gems/1.8/gems/chef-10.18.2/bin/../lib/chef/application.rb:72:in `run'
/opt/ruby/lib/ruby/gems/1.8/gems/chef-10.18.2/bin/chef-solo:25
/opt/ruby/bin/chef-solo:19:in `load'
/opt/ruby/bin/chef-solo:19
[2013-02-25T10:59:43+00:00] FATAL: Chef::Exceptions::Package: package[curl-dev] (nginx::passenger line 38) had an error: Chef::Exceptions::Package: No version specified, and no candidate version available for curl-dev


I think the problem is related to rbenv/ruby build setup, since the next provisioning will not find the chef-solo gem anymore.

Any help or feedback what I could do, would be great!

Thanks,

Patrick






Archive powered by MHonArc 2.6.16.

§