Vagrant 厨师:没有这样的食谱
当我尝试使用vagrant和chef在我的vm上提供时,我遇到了以下错误:Vagrant 厨师:没有这样的食谱,vagrant,chef-infra,Vagrant,Chef Infra,当我尝试使用vagrant和chef在我的vm上提供时,我遇到了以下错误: ==> default: ==================================== ==> default: Error Resolving Cookbooks for Run List: ==> default: ==================================== ==> default: ==> default: Missing Cookbooks:
==> default: ====================================
==> default: Error Resolving Cookbooks for Run List:
==> default: ====================================
==> default:
==> default: Missing Cookbooks:
==> default: ------------------
==> default: No such cookbook: windows
==> default:
==> default: Expanded Run List:
==> default: ------------------
==> default: * java
==> default:
==> default: Platform:
==> default: ---------
==> default: x86_64-linux
==> default:
我的流浪结构是:
VagrantFile
├───chef
│ ├───cookbooks
│ │ ├───apt
│ │ ├───java
│ ├───roles
│ │ ├───java-dev-workstation.rb
vagrant文件
内容为:
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.provision "chef_solo" do |chef|
chef.roles_path = "chef/roles"
chef.cookbooks_path = "chef/cookbooks"
chef.add_role "java-dev-workstation"
end
end
和java-dev-workstation.rb
:
name "java-dev-workstation"
default_attributes(
# Because it's Oracle, we need to agree to the terms and conditions.
:java => {
:install_flavor => 'oracle',
:jdk_version => '8',
:accept_license_agreement => true,
:oracle => { "accept_oracle_download_terms" => true }
}
)
run_list(
"recipe[java]"
)
我用的是厨师12.18.31
有什么想法吗?java食谱依赖于
windows
cookbook,您没有下载它,因此无法继续。这就是为什么人们通常使用Berkshell或Policyfile系统作为这两种自动下载依赖项的原因
为了回答您可能的下一个问题:是的,您需要依赖项,即使您没有使用Windows VM,我们也没有任何方法来实现可选依赖项。同意前面的评论。因此,不要使用vagrant Berkshell插件手动添加所有依赖项- 您需要做的是: