Ansible 在称为循环的角色中设置_事实
我试图做的是使用Ansible 在称为循环的角色中设置_事实,ansible,Ansible,我试图做的是使用include\u role和with\u items多次调用角色。大概是这样的: - include_role: name: my_role with_items: "{{ list }}" loop_control: loop_var: struct 然后在角色内部,我必须保存命令的输出。但是,由于这是一个循环,我如何保存输出而不被覆盖?我认为我处理这个问题是错误的一个选项是将输出附加到列表中。例如,角色的任务 - command: date r
include\u role
和with\u items
多次调用角色。大概是这样的:
- include_role:
name: my_role
with_items: "{{ list }}"
loop_control:
loop_var: struct
然后在角色内部,我必须保存命令的输出。但是,由于这是一个循环,我如何保存输出而不被覆盖?我认为我处理这个问题是错误的一个选项是将输出附加到列表中。例如,角色的任务
- command: date
register: myoutput
- set_fact:
log: "{{ log + [myoutput.stdout] }}"
- debug:
msg: "{{ log }}"
还有这出戏
- hosts:
- localhost
vars:
log: []
list: [1,2]
tasks:
- include_role: name=role
loop: "{{ list }}"
loop_control:
loop_var: struct
# ansible-playbook play.yml | grep -A 3 msg
"msg": [
"Sat Sep 22 19:52:38 CEST 2018"
]
}
--
"msg": [
"Sat Sep 22 19:52:38 CEST 2018",
"Sat Sep 22 19:52:40 CEST 2018"
]