2016-12-07 44 views
1

我正在使用Vagrant + Chef爲rails開發配置Ubuntu16.04 vm。我想用Chef安裝Bundler(使用rbenv),但由於某種原因,它會失敗,並顯示以下消息:「來自cookbook rbenv的自定義資源rbenv_gem的未定義方法clear_sources」。配置時使用rbenv安裝Bundler gem(Chef + Vagrant)

任何想法?

謝謝!

我Vagrantfile的內容:

Vagrant.configure("2") do |config| 

config.vm.box = "bento/ubuntu-16.04" 

config.vm.network :forwarded_port, guest: 3000, host: 3000 

config.vm.provision :chef_solo do |chef| 
chef.cookbooks_path = ["cookbooks", "site-cookbooks"] 

chef.add_recipe "apt" 
chef.add_recipe "ruby_build" 
chef.add_recipe "rbenv::user" 
chef.add_recipe "rbenv::vagrant" 

chef.json = { 
    rbenv: { 
    user_installs: [{ 
     user: 'vagrant', 
     rubies: ["2.3.1"], 
     global: "2.3.1" , 
     gems: { 
     "2.3.1" => [ 
      { name: "bundler" } 
     ] 
     } 
    }] 
    } 
} 
end 
end 

Cheffile:

site "https://supermarket.getchef.com/api/v1" 

cookbook 'apt' 
cookbook 'build-essential' 
cookbook 'ruby_build', '~> 1.0.0' 
cookbook 'rbenv', git: 'https://github.com/aminin/chef-rbenv' 

回答