How to convert a dictionary of dictionaries into a

2019-02-24 05:11发布

问题:

Within an Ansible vars file, I want to convert a dict of dicts into a list of dicts that I can pass to an external role from Ansible Galaxy.

Input:

postgres_users:
  dc1:
    name: user_dc1
    password: pass_dc1
  dc2:
    name: user_dc2
    password: pass_dc2
  dc3:
    name: user_dc3
    password: pass_dc3

Desired output:

postgres_users:
  - name: user_dc1
    password: pass_dc1
  - name: user_dc2
    password: pass_dc2
  - name: user_dc3
    password: pass_dc3

Is there a simple way to do this within an Ansible vars file?

回答1:

{{ postgres_users.values() | list }} seems to do it.