ansibleでサーバの設定をモクモクとやってます。
そんな中、yumパッケージがあったら(なかったら)〜を行うような事があったけど
なかなかいいやり方がなかったので調べてみたところ、以下のやり方に落ち着いたのでメモ。
# {{ package }}はパッケージ名
# mariadb-libs.x86_64とか
- name: check if "{{ package }}" is installed
yum:
list="{{ package }}"
register: pkg
- name: install "{{ package }}" if exist
yum:
name: "{{ package }}"
state: latest
when: pkg.results|selectattr("yumstate", "match", "installed")|list|length != 0
参考