0

以下のように mCollective インベントリ スクリプトを作成しました。

def formatting(users_ids)
   YAML.load(File.open(users_ids))
end

inventory do
        format "%s\t%s\t"
        fields { [facts["hostname"], formatting(facts["users_ids"]) ] }
end

ここで users_ids ファクトはサーバー上の yaml 形式です。したがって、この要素のインベントリを作成するときは、その yaml 形式を解析してハッシュする必要があります。しかし、このスクリプトで実行するとエラーが発生し、

[root@mco-server]#
The inventory application failed to run, use -v for full error backtrace details: (eval):2:in `initialize': No such file or directory - ---
  root: 0
  test1: 503
  testuser: 2033
[root@mco-server]#

出力を解析するために何かが欠けているかどうかはわかりません。奇妙なことは、ホスト名も印刷されないことです。

ファクトの出力は、サーバー上の fact.yaml から以下のとおりです。

  users_ids: |-
    ---
      root: 0
      test1: 503
      testuser: 2033

どんな助けでも大歓迎です。

4

1 に答える 1