我写了一个ansible任务,使用with_items
迭代设置列表。现在我运行ansible时会记录所有设置。它非常冗长,很难看出发生了什么。但是,如果我使用no_log
禁用所有输出,我将无法在失败时识别特定项目。
如何改进输出 - 仅显示每个项目的标识符?
示例任务:
- authorized_key:
user: "{{ item.user }}"
key: "{{ item.key }}"
with_items: "{{ ssh_keys }}"
示例输出:
任务[sshkey-alan-sysop:ssh授权密钥] *********************************
ok:[brick] => (item = {u' user&#39 ;: u' alan-sysop',u' key':u' ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAgRe16yLZa8vbzsrxUpT5MdHoEYYd / awAnEWML4g + YoUvLDKr + zwmu78ze / E1NSipoZejXpggUYRVhh8MOiCX6qpUguBDWZFlvSCE / 7uXWWg7Oht0f1kDS2xU7YiycPIzMN1dmUEFY9AixnN936Dq6nOtEzgBwjo66I1YC / 5jrsQEqF19shx43A4DTFlPUz / PnsqHl2ESrkIk3e8zyidaPN2pRbA5iKzdvPW4E2W2tKw9ll40vqRXzaWIF7v293Ostwi1IPi2erlC777DhjZUhZ1VGXIR7FDAfANzalrMe6c / ZysiXewiUYgMw0I8Dh1LK3QMj9Kuo35S5E0Xj3TB 阿兰-系统操作员@阿兰膝上型'})
答案 0 :(得分:5)
对此有loop_control:
- authorized_key:
user: "{{ item.user }}"
key: "{{ item.key }}"
with_items: "{{ ssh_keys }}"
loop_control:
label: "{{ item.user }}"
答案 1 :(得分:0)
标识符可以用作字典的键。
- authorized_key:
user: "{{ item }}"
key: "{{ ssh_keys[item] }}"
with_items: "{{ ssh_keys.keys() }}"
示例输出:
TASK [sshkey-alan-sysop : ssh authorized keys] *********************************
ok: [brick] => (item=alan-sysop)