有没有一种方法可以为Chef资源的name属性指定默认值?

时间:2019-03-02 01:28:02

标签: ruby chef

理想情况下,我希望能够做到:

resource_name :house

property :material, String, default: 'brick', name_property: true
...

这样我就可以了

house do
  ...
end

并且材料属性将设置为'brick',但这会导致错误消息:

A property cannot be both a name_property/name_attribute and have a default value ...

这很清楚。我可以肯定地确定我所要求的是不可能的,但是,我可能也缺少实现这一目标的另一种方法,所以我想问一下。

1 个答案:

答案 0 :(得分:1)

否,您必须在名称级别本身上执行此操作。参见https://github.com/chef/chef/blob/master/lib/chef/resource/apt_update.rb#L31

应该非常谨慎地使用它,对于真正的全局单例来说,这种情况很少见。