私人方法`open'调用Chef :: Provider :: File:Class

时间:2014-10-30 21:02:17

标签: chef

我正在尝试创建一个将所有属性写入文件的资源。

提供商gist

资源gist

我收到以下错误:

在资源'ruby_block [dump_node_attributes]上执行操作run时出错'`

NoMethodError

private method `open' called for Chef::Provider::File:Class

Cookbook Trace:

/Users/odedpriva/.chef/local-mode-cache/cache/cookbooks/test-helper/providers/create.rb:24:in `block (3 levels) in class_from_file'

知道我做错了什么吗?

1 个答案:

答案 0 :(得分:7)

在你的区块中,制作::File.open。不幸的是,由于Ruby的隐式相对符号查找,这是必需的。前导::强制它成为一个aboslute符号,就像路径中的前导/一样。