Ansibleの条件分岐をやってみる

Ansibleはシンプルであることが強みであり、検証や複雑な処理は苦手です。条件分岐は複雑化する処理であり、あまり積極的に取り入れるべきものではありませんが、どうしても条件分岐をしたいこともあると思います。条件分岐をやってみます。

結果を変数に格納しwhenに一致したときに実行

条件分岐はwhenで指定することができます。以下の場合、ansible_os_familyがRedHatである場合にcat /etc/redhat-releaseを実行する例になります。

---
- name: Test Playbook
  hosts: test_servers
  tasks:
    - name: Check OS Family
      debug:
        var: ansible_os_family
    
    - name: Check OS Version
      command: cat /etc/redhat-release
      when: ansible_os_family == "RedHat"

終わりに

簡単ですが、Ansibleの条件分岐を試しました。whenで条件分岐して、コマンドを実行させることができます。