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"
    ]