Ansible コマンドは、成功の代わりに変更を返します。

Ansible コマンドは、成功の代わりに変更を返します。

私はansibleを学んでいますが、不明な状況に直面しました。次のモジュールコマンドを実行すると、結果は「Changed」です。

ansible agent.example.com -i inventory -m copy -a 'content="Node Managed by Ansible\n" dest=/etc/motd'

なぜ成功した答えを受けられないのでしょうか?実際にmotdファイルが修正されたことを確認しました。

これがジョブの出力です。

agent.example.com | CHANGED => {
    "changed": true, 
    "checksum": "3eb89f442d0bec80f2c59d6d66d621cc4ced7272", 
    "dest": "/etc/motd", 
    "gid": 0, 
    "group": "root", 
    "md5sum": "2e92a9663d317113e1c4bafb2610f3d5", 
    "mode": "0644", 
    "owner": "root", 
    "secontext": "system_u:object_r:etc_t:s0", 
    "size": 24, 
    "src": "/home/admin/.ansible/tmp/ansible-tmp-1543639577.88-189984200437408/source", 
    "state": "file", 
    "uid": 0
}

ベストアンサー1

Ansibleでは、「CHANGED」状態で再生されます。はい成功した応答。失敗すると、プレイは「失敗」したと報告されます。

changed_when: falseAnsible PlayBookでは、プレイに加えて「変更された」状態を抑制できます。再生が成功すると、ステータスは「OK」になります。

おすすめ記事