【发布时间】:2018-10-16 05:20:54
【问题描述】:
我有一个 java/recipes/windows 配方,它使用一种名为 win_friendly_path 的方法,但它不起作用,因为尚未定义 win_friendly_path。
win_friendly_path 在../windows/libraries/windows_helper.rb 中定义如下:
module Windows
module Helper
def win_friendly_path(path)
path.gsub(::File::SEPARATOR, ::File::ALT_SEPARATOR || '\\') if path
end
我已经在 java (./) 食谱中设置了 berksfile 和 metadata.rb 以依赖于 windows 食谱。
我不确定如何包含此模块,所以现在我尝试在 java/cookbook/windows 配方中使用 include WindowsHelper 并收到此错误:
uninitialized constant #<Class:#<Chef::Recipe:0x00000000029a2188>>::WindowsHelper
我已经尝试了几种变体,现在感觉我花了太多时间来解决问题,所以感谢任何帮助。
更新:将这一行 ::Chef::Resource.send(:include, Windows::Helper) 插入我的 java/recipes/windows 配方会给我以下错误:
Chef::Exceptions::ValidationFailed
----------------------------------
value is a required property
【问题讨论】:
标签: ruby chef-infra test-kitchen