编写一个调用另一个资源通知方法的LWRP

时间:2013-01-27 08:41:02

标签: resources chef

我正在尝试编写一个扩展Execute资源的LWRP。 我希望LWRP中的notifies属性/方法传递给Execute资源的notifies方法

在我拥有的资源中:

attribute :notifies,     :kind_of => Array,  :default => []

在我提供的

execute something do
  ...
  r.notifies.empty? ? nil : notifies(*r.notifies)
end

作为回报,得到一个参数错误:

ArgumentError: wrong number of arguments (3 for 1)

感谢任何提示或提示。

1 个答案:

答案 0 :(得分:0)

我很确定任何 LWRP中存在:notifies属性,因为它是由基类提供的。因此,您不应将此属性添加到资源文件中。

你可以只使用提供者中的分配,不需要检查nil。

execute something do
  ...
  notifies r.notifies
end