localhost:
                  
                  
                        vars:
                  
                  
                          ansible_connection: local
                  
                  
                          ansible_user: urhero
                  
                  
                          item_main:
                  
                  
                            item1: value1
                  
                  
                            item2: value2
                  
                  
                            item3: value3
                  
                  
                  
                  
                  
                  Пытаюсь делать как то так:
                  
                  
                      - name: debug
                  
                  
                        debug:
                  
                  
                          msg: item {{item.key}} value {{item.value}}
                  
                  
                        loop: "{{ item_main }}"
                  
                  
                  
                  
                  
                  Но получаю:
                  
                  
                  fatal: [localhost]: FAILED! => {"msg": "'item_main' is undefined"}
                  
                  
                  
                  
                  
                  Как это правильно сделать?
                  
                  
                
1. Vars неправильно заданы для хоста. 2. item_main не список а словарь.
item_main: - key: item1 value: value1 - key: item2 value: value2 В верном направлении иду?
Да. Или loop: '{{item_main|dict2items}}'
И, читаю вот на https://stackoverflow.com/questions/40027847/accessing-inventory-host-variable-in-ansible-playbook Что дотучаться до этого списка я смогу только через {{ hostvars['your_host_group'].ansible_host }} Эм, а как быть если групп хостов много?
Ссылку не читал. Если плейбук выполняется на самом хосте, то переменные доступны прямо так. Переменные других хостов через hostvars['other_host_inventory_hostname']['varname']
fatal: [localhost]: FAILED! => {"msg": "'item_main' is undefined"} Да вот что то не видит он их
Переменные хоста без vars пишутся
Обсуждают сегодня