Я застрял в переборе списка словаря.Пример vars.yml и минимальный playbook ниже.
---
- hosts: localhost
connection: local
gather_facts: false
become: false
vars:
csvfile: "{{ lookup('file', 'vars/users.csv') }}"
tasks:
- name: Convert CSV to YAML
template:
src: "./users_csv.j2"
dest: "vars/users.yml"
run_once: true
- name: Include users from users.yml to users variable
include_vars:
file: vars/users.yml
name: users
- debug:
msg: "{{ users.value }}"
with_dict:
- "{{ users }}"
Мой шаблон Jinja2 создает список словарей в формате YAML, как показано ниже:
--
users:
- username: Auser1
group: Admin
- username: Auser2
group: Admin
- username: Auser3
group: User
В любом случае, когда я перебираю словарь, я не могу получить, например,имя пользователя или группа.
Самое большое, что я получил, - это фатальное сообщение об ошибке:
fatal: [localhost]: FAILED! => {"msg": "with_dict expects a dict"}
Я знаю, как перебирать список, но у меня нет идеи, почему он терпит неудачу здесь.