ruby 厨师中级班的Ohai模块重构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 厨师中级班的Ohai模块重构相关的知识,希望对你有一定的参考价值。

Ohai.plugin(:Apache) do
  provides "apache/modules"

  collect_data(:default) do
    apache Mash.new
    apache[:modules] = {:static => [], :shared => []}
      modules = shell_out("apachectl -t -D DUMP_MODULES")
      modules.stdout.each_line do |line|
      fullkey, value = line.split(/\(/, 2).map {|i| i.strip}
      apache_mod = fullkey.gsub(/_module/,"")
      dso_type = value.to_s.chomp("\)")
      if dso_type.match(/shared/)
        apache[:modules][:shared] << apache_mod
      elsif dso_type.match(/static/)
        apache[:modules][:static] << apache_mod
      end
    end
  end
end

以上是关于ruby 厨师中级班的Ohai模块重构的主要内容,如果未能解决你的问题,请参考以下文章

ruby 厨师中级班的处理程序食谱

ruby Ohaiを単体で使ってみる。参考号:https://wiki.opscode.com/display/chef/Ohai+Installation+and+Use

ruby 一个ruby脚本,用于创建一大堆厨师节点。

如何使用 Ruby 块在厨师食谱中分配变量

厨师库或定义?

如何使用 Open/Closed 原则或策略模式重构此 ruby​​ 代码