我试图用Vagrant创建我的第一个Chef配方,并在第一步遇到问题.我的食谱的第一行是:
include_recipe "apt"
但是当我尝试和流浪汉提供时,我收到以下错误:
==> default: [2014-09-21T07:15:42+00:00] WARN: MissingCookbookDependency: ==> default: Recipe `apt` is not in the run_list,and cookbook 'apt' ==> default: is not a dependency of any cookbook in the run_list. To load this recipe,==> default: first add a dependency on cookbook 'apt' in the cookbook you're ==> default: including it from in that cookbook's Metadata. ==> default: [2014-09-21T07:15:42+00:00] ERROR: No resource or method named `apt_installed?' for `Chef::Recipe "default"' ==> default: [2014-09-21T07:15:42+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
这就是我的Vagrantfile的样子:
Vagrant.configure("2") do |config| config.omnibus.chef_version = :latest config.vm.Box = "precise32" config.vm.Box_url = "http://files.vagrantup.com/precise32.Box" config.vm.network :private_network,ip: "192.168.42.42" config.vm.synced_folder "./","/var/www",group: "www-data",mount_options: ["dmode=777,fmode=664"] config.vm.provision :chef_solo do |chef| chef.cookbooks_path = "cookbooks" chef.data_bags_path = "data_bags" chef.add_recipe "divups" end end
而divups default.rb文件如下所示:
include_recipe "apt" puts "So we made it this far..."
但奇怪的是,如果我将它包含在chef.add_recipe“divups”上方的Vagrantfile文件中,我可以安装apt,但如果我尝试将其包含在我的自定义配方中,我会收到上面发布的错误.
有什么我错过或做错了吗?
解决方法
原文地址:https://www.jb51.cc/ruby/265588.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。