【ansible】registerでコマンド結果を格納し、debugで表示する
環境
ubuntu 20.04.5
ansible 2.12.10
手順
code:playbook.yaml
tasks:
- name: register test
ansible.builtin.shell:
date
register: date_result
- name: debug date_result
ansible.builtin.debug:
var: date_result
ポイント
dateコマンドの結果を変数date_resultへ格納
debugモジュールで変数date_resultの情報を出力可能
出力結果
code:output
TASK register test *********************************************************************************************************************************************************************************************************
changed: 127.0.0.1
TASK debug date_result *****************************************************************************************************************************************************************************************************
ok: 127.0.0.1 => {
"date_result": {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python3"
},
"changed": true,
"cmd": "date",
"delta": "0:00:00.002659",
"end": "2022-12-26 23:56:21.779260",
"failed": false,
"msg": "",
"rc": 0,
"start": "2022-12-26 23:56:21.776601",
"stderr": "",
"stderr_lines": [],
"stdout": "Mon 26 Dec 2022 11:56:21 PM JST",
"stdout_lines": [
"Mon 26 Dec 2022 11:56:21 PM JST"
]
}
}
今回はすべての情報が出力されているが、例えばrcのみほしい場合は
var: date_result.rcとすればよい
参考
https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_conditionals.html#register-variables
https://docs.ansible.com/ansible/latest/collections/ansible/builtin/debug_module.html
https://dekitakotono.blogspot.com/2019/04/register.html
ansible