Ansible从字典中选择并组合属性

Ansible从字典中选择并组合属性,ansible,Ansible,我只需要解析这两个数据集,并在数据集2中为主机构建字段列表和值 比如说,, 数据集2有三个主机host1、2和3。 主机1、2和3的数据_集_1中的相应数据为 主持人1: 字段1:'1' 字段2:'2' 主持人2: 字段3:'3' 字段4:'4' 主持人3: 字段1:'1' 字段3:'3' 从这里,我只需要建立这样的结果 --- - name: Consolidate output hosts: localhost gather_facts: no vars: data_se

我只需要解析这两个数据集,并在数据集2中为主机构建字段列表和值

比如说,, 数据集2有三个主机host1、2和3。 主机1、2和3的数据_集_1中的相应数据为 主持人1: 字段1:'1' 字段2:'2' 主持人2: 字段3:'3' 字段4:'4' 主持人3: 字段1:'1' 字段3:'3'

从这里,我只需要建立这样的结果

---
- name: Consolidate output
  hosts: localhost
  gather_facts: no
  vars:
    data_set_1:
      host1:
        field1: '1'
        field2: '2'
      host2:
        field3: '3'
        field4: '4'
      host3:
        field1: '1'
        field3: '3'
      host4:
        field5: '5'
        field6: '6'
    data_set_2:
      - host1
      - host2
      - host3
如何从ansible playbook执行此操作?

创建的列表循环中的字典。比如说

result = {
  field1: "1",
  field2: "2",
  field3: "3",
  field4: "4"
}
给导出ANSIBLE\u STDOUT\u CALLBACK=yaml

- set_fact:
    result: "{{ result|default({})|combine(item) }}"
  loop: "{{ data_set_2|map('extract', data_set_1)|list }}"
- debug:
    var: result|to_nice_json

嗨,安妮斯,欢迎来到SO。这个网站不是一个为我写代码的网站;您需要包括您尝试过的代码以及运行时遇到的错误。有关解决问题的可能方法,请参阅文档中的提示:。。。
  result|to_nice_json: |-
    {
        "field1": "1",
        "field2": "2",
        "field3": "3",
        "field4": "4"
    }