【发布时间】:2025-11-24 06:00:01
【问题描述】:
我正在添加这个 Solr Chef recipe 和 existing vagrant box 。我想覆盖版本属性 here 。我是在其中一个 json 文件中覆盖这些变量,还是必须在配方属性文件本身中覆盖这些变量?
【问题讨论】:
标签: vagrant chef-infra
我正在添加这个 Solr Chef recipe 和 existing vagrant box 。我想覆盖版本属性 here 。我是在其中一个 json 文件中覆盖这些变量,还是必须在配方属性文件本身中覆盖这些变量?
【问题讨论】:
标签: vagrant chef-infra
对于您的用例,可以直接在 Vagrantfile 中覆盖它。查看更多关于 chef solo 和 vagrant here 的信息。
tldr;
只需在您的 Vagrantfile 中提供带有属性的 chef.json 选项,例如:
Vagrant.configure("2") do |config|
config.vm.provision "chef_solo" do |chef|
# ...
chef.json = {
"solr" => {
"version" => "4.6.1"
}
}
end
end
在一般实践中,通常在角色内部设置属性,或者在社区属性周围创建wrapper cookbooks,这样就无需更改原始源代码。
【讨论】: