我正在使用流浪汉和厨师独奏条款。
openldap['rootpw']
我想覆盖属性的openldap['rootpw']
。
我尝试覆盖配置,如
# Vagrantfile
Vagrant::Config.run do |config|
config.vm.provision :chef_solo do |chef|
#....
chef.json = {
'rootpw' => 'xxxx....',
'openldap' => {
'rootpw' => 'xxxx....'
}
}
end
end
但是,属性没有被覆盖。
我认为,如果属性为default['openldap']['rootpw']
,它可以覆盖。
如何覆盖“不默认”属性?
答案 0 :(得分:1)
使用覆盖属性。 You can set them in different places(食谱,角色,环境),也许你可以找到适合你的。
答案 1 :(得分:1)
您不能像默认值那样轻易覆盖“非默认”属性,因为它会评估链的下方。基本上,顺序是default,force_default,normal,override,force_override,automatic的连续统一体。如果你想要覆盖一些东西,那就进一步向下看。最佳做法是使用默认值并覆盖它们。
http://docs.opscode.com/essentials_cookbook_attribute_files.html#attribute-precedence