我正在编写一个 Ohai 插件来添加一些由厨师客户端使用的自定义属性。我在哪里包含 plugin.rb 文件?
是在食谱里面吗?
还是我必须将其复制到某个标准位置?
Chef 文档和其他教程并没有提供太多关于此信息的信息(或者我一定错过了一个非常明显的事实)。我知道在 Puppet 中,您可以在模块的 lib/factory/文件夹中包含自定义事实。厨师也一样吗?
最佳答案
这并不像听起来那么难,但我同意 Ohai 7 上的文档缺少 Ohai 6 docs 中存在的一些信息。
但是, ohai
resource 和 ohai cookbook 正是您要寻找的。可以在 recipe of mine 中找到使用它的示例。
基本上,您首先必须将插件的 .rb
文件放入 Ohai 的插件路径 ( node[:ohai][:plugin_path]
) 中,然后重新加载 Ohai 以使属性在当前厨师运行中可用:
ohai "reload" do
action :reload
end
template "#{node[:ohai][:plugin_path]}/myplugin.rb" do
notifies :reload, "ohai[reload]"
end
关于chef-infra - 如何分发自定义 Ohai 插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25415967/