[chef] Re: Problems between Chef Ruby and system Ruby


Chronological Thread 
  • From: Seth Floyd < >
  • To:
  • Subject: [chef] Re: Problems between Chef Ruby and system Ruby
  • Date: Tue, 23 Dec 2014 20:23:11 -0500

I had the same issue...If you want to use the version of ruby that came with ChefDK do the following…assuming you are using BASH…
Do:  echo 'eval "$(chef shell-init bash)"' >> ~/.bash_profile
Worked for me.

Seth Floyd

On Tue, Dec 23, 2014 at 7:09 PM, Robert Freiberger < " target="_blank"> > wrote:
Hello, 

I'm very new to Chef and going over the tutorials plus the Learning Chef book by O'Reilly. Everything is going very smooth but I'm having issues keeping the system Ruby and Chef Ruby working separate from each other. 

One of the issues I found is working with test kitchen. 

$ /opt/chefdk/bin/kitchen list
!!!!!! The `berkshelf' gem is missing and must be installed or cannot be properly activated. Run `gem install berkshelf` or add the following to your Gemfile if you are using Bundler: `gem 'berkshelf'`.
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::UserError
>>>>>> Message: Could not load or activate Berkshelf (can't activate json-1.7.7, already activated json-1.8.1)
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

I checked and found that the issue appears to be the system Gem is referencing a different version from the Chef Gem. 

$ gem list | grep json
json (1.7.7)

$ /opt/chefdk/embedded/bin/gem list | grep json
fog-json (1.0.0)
json (1.8.1, 1.7.7)
multi_json (1.10.1)

I know that many people are using RVM, but I had troubles making this work and would like to know what is best practice (from a newbie point of view). 

Thanks so much!
Robert





Archive powered by MHonArc 2.6.16.

§