私の以前のクエリ(下記参照)の関数を使用して、エージェントからファイルを取り出して必要な作業を実行することができました。しかし、これは、ファイルが見つからないことを示す例外がスローされるため、システム上のすべてのユーザーに影響を与えます。とにかく、このruby関数にunless file_exists ....
のようなロジックを追加できますか?パペット:エージェントからファイルをロードする方法 - パート3
私の階層は以下の通りです。私はそれが "mymodules"でさえもいない他のユーザーに影響を与える理由には従いません。参照コードの追加
Puppet : How to load file from agent
Puppet : How to load file from agent - Part 2
ドミニクによって要求されたとして、::
Root modules mymodules lib facter ruby_function1.rb ruby_function2.rb modules_by_userxx1 modules_by_userxx2 modules_by_userxx3 ....
リファレンス
# module_name/lib/facter/master_hash.rb
require 'json'
Facter.add(:master_hash) do
setcode do
# return content of foo as a string
f = File.read('/path/to/some_file.json')
master_hash = JSON.parse(f)
master_hash
end
end