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'