お疲れ様です。きざきまるおです。
今回はAnsibleでのエラー処理についてまとめていこうと思います。
Ansible実行中に思わぬエラーに遭遇することがあるかと思いますので、そんな時に確認いただければと思います。
それではどうぞ。
ソース
書くブロックごとに説明文を記載しておりますので、そちらを参照してください。
# こちらはPlaybookの特性を示すブロックです。
# 全ホストに対して実行しようとしています。
- name: error
hosts: all
gather_facts: no
# 実行部分です。
# 最初にデバッグ情報、次にエラーが発生するコマンド、最後にIPアドレスを出力しようとしています。
tasks:
- name: tasks
block:
- name: first
debug:
- name: second
command:
cmd: diff file1.txt file2.txt
- name: third
command:
cmd: echo ansible_default_ipv4.address
# こちらはエラー発生時に実行するコマンドです。
# エラーが起きたホストのIPを標準出力しようとしています。
rescue:
- name: get ip
#lineinfile:
#path: /etc/ansible/ip.txt
#line: {{ ansible_default_ipv4.address }}
shell: echo ansible_default_ipv4.address
それではまた。