我的要求是在厨师食谱中创建一个动态属性。我在我的食谱中声明了一个默认属性,如下所示。
default['servicename']['arf'] = "1"
有时,在某些节点中需要将此值更改为2。我们如何在运行时将此值传递给cookbook?
答案 0 :(得分:1)
这取决于它是如何设置的模式。最简单的方法可能是在角色的属性中使用该值创建一个Chef角色,然后将其添加到任何相关节点的运行列表中。您也可以通过knife node edit
或类似方式直接在节点中设置它,或者如果它因env而异,则可以通过Chef环境进行设置。
答案 1 :(得分:1)
您可以创建一个json文件,如下所示:example.json
{
"servicename":{
"arf": 2
}
}
并在厨师 - 客户执行期间传递它,如下所示 chef-client -j example.json