1

モジュールから呼び出してモジュール (pdxcat/collectd) を拡張しました。基本モジュールは、Amazon Linux OS ファミリを「Redhat」として識別することを好みますが、パペットによって Amazon Linux OS にインストールされたファクトは、OS を「Linux」として報告します。

ベースモジュールを呼び出す前に、osfamily の factor 値を Linux から Redhat に上書きすることで、このバグを修正したいと考えています。

mymodule/lib/facter 内の私の osfamily.rb は

Facter.add('osfamily') do
setcode do
   case Facter.value(:operatingsystem)
   when "Amazon"
      "RedHat"
   else
   Facter.value("kernel")
   end
 end
end

しかし問題は、osfamily の値を上書きできないことです。osfamily.rb からファクトをロードした後でも、osfamily は「Redhat」ではなく「Linux」として報告されます。

私のコードは、またはのような新しい値に対しては正しく機能しますが、またはosfamilytestoperatingsystemreleasetestような既存の値に対しては正しく機能しません。osfamilyoperatingsystemrelease

Puppet Version: 2.7.25 
Facter Version: 1.6.18 
Operating System:
Amazon Linux 2015.03 
Puppet installation steps:
yum install puppet
4

2 に答える 2