【发布时间】:2014-08-27 01:27:31
【问题描述】:
当我在食谱的属性 /attributes/default.rb 中创建属性时,一切正常。
如果我在我的食谱中添加一个食谱,比如 /recipes/dofubar.rb,我希望 /attributes/dofubar.rb 中定义的属性能够被加载。他们似乎不是。
有没有办法为一个配方定义一组默认属性,为其他配方定义另一组?
【问题讨论】:
当我在食谱的属性 /attributes/default.rb 中创建属性时,一切正常。
如果我在我的食谱中添加一个食谱,比如 /recipes/dofubar.rb,我希望 /attributes/dofubar.rb 中定义的属性能够被加载。他们似乎不是。
有没有办法为一个配方定义一组默认属性,为其他配方定义另一组?
【问题讨论】:
属性文件名和配方之间没有关联。 attributes/ 文件夹中的所有文件在 Chef Client 运行开始期间按顺序加载。即使您将 attribute.rb 文件命名为与食谱相同,Chef 也不会产生关联。每次都会加载所有的属性文件。
【讨论】:
include_attribute 是一种方式。
default.rb。之后,食谱中的所有其他属性文件将按字母顺序加载。