Ruby 厨师。我可以重写包装器cookbook中的库方法吗?

Ruby 厨师。我可以重写包装器cookbook中的库方法吗?,ruby,chef-infra,Ruby,Chef Infra,例如: 社区食谱, 包装纸食谱 a/libraries/default.rb: module Path def path '/var/' end def other_method; end ... end include Path ... a = path b = other_method ... module Path def path '/usr/' end end 本模块包含在a-cookbook资源中。 a/resources/defaul

例如: 社区食谱, 包装纸食谱

a/libraries/default.rb:

module Path
  def path
    '/var/'
  end

  def other_method; end
  ...
end
include Path
...
a = path
b = other_method
...
module Path
  def path
    '/usr/'
  end
end
本模块包含在a-cookbook资源中。 a/resources/default.rb:

module Path
  def path
    '/var/'
  end

  def other_method; end
  ...
end
include Path
...
a = path
b = other_method
...
module Path
  def path
    '/usr/'
  end
end
我想用以下内容覆盖包装器cookbook中的路径方法:

b/libraries/default.rb:

module Path
  def path
    '/var/'
  end

  def other_method; end
  ...
end
include Path
...
a = path
b = other_method
...
module Path
  def path
    '/usr/'
  end
end

是的,
libraries/
中的代码只是按原样运行,所以所有关于monkey补丁的常规Ruby规则都适用。

谢谢。在社区菜谱中发现了一个bug——我想覆盖的方法只是没有调用,它欺骗了我。