はじめに
Playbook 内で新たに変数を定義する set_fact
というモジュールがあります。
固定で簡単な値だったらよいのですが、動的に値を設定する場合は中身を確認したくなります。
そんなとき、debug
モジュールで新たにタスクを作らなくても ansible-playbook
コマンドに -v
を指定して実行すると確認できます。
- 動作確認環境
- Ansible 2.9.9
サンプル
以下のような Playbook を利用します。
--- - hosts: rt01 gather_facts: false tasks: - name: set_fact test set_fact: testvar: "{{ now() }}" # 動的な値 (now は Ansible 2.8 以上)
ansible-playbook
コマンドに -v
を指定して実行します。
$ ansible-playbook -i nventory.ini set_fact.yml -v PLAY [rt01] ************************************************************************************************************* TASK [set_fact test] **************************************************************************************************** ok: [rt01] => {"ansible_facts": {"testvar": "2020-09-03 20:41:51.140976"}, "changed": false} PLAY RECAP ************************************************************************************************************** rt01 : ok=1 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
"ansible_facts": {"testvar": "2020-09-03 20:41:51.140976"}
のように、testvar
の値が確認できます。
地味に便利です。