I am trying to access the variable using loop, but it's not working for me.
playbook
---
- name: test looping
hosts: localhost
gather_facts: False
vars:
repos:
- name: repo1
os_list:
- centos
- rhel
major_distribution_list:
- 6
- 7
- 8
archs:
- noarch
- x86_64
tasks:
- include_tasks: repo-paths.yml
with_items: "{{ repos }}"
loop_control:
loop_var: repo
- debug: msg="./{{ item.0 }}/{{ item.1 }}/{{ item.2 }}/{{ item.3 }}"
with_nested:
- "{{ repo.os_list }}"
- "{{ repo.major_distribution_list }}"
- "{{ repo.name }}"
- "{{ repo.archs }}"
But i am getting error repo variable is undefined.
Original Ouput:-
PLAY [test looping] ***********************************************************************************************************************************************************
TASK [include_tasks] **********************************************************************************************************************************************************
TASK [debug] ******************************************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"msg": "'repo' is undefined"}
PLAY RECAP ********************************************************************************************************************************************************************
localhost : ok=0 changed=0 unreachable=0 failed=1 skipped=0 rescued=0 ignored=0
Expected output:-
"msg": "./centos/6/repo1/noarch"
"msg": "./centos/6/repo1/x86_64"
"msg": "./centos/7/repo1/noarch"
"msg": "./centos/7/repo1/x86_64"
"msg": "./centos/8/repo1/noarch"
"msg": "./centos/8/repo1/x86_64"
"msg": "./rhel/6/repo1/noarch"
"msg": "./rhel/6/repo1/x86_64"
"msg": "./rhel/7/repo1/noarch"
"msg": "./rhel/7/repo1/x86_64"
"msg": "./rhel/8/repo1/noarch"
"msg": "./rhel/8/repo1/x86_64"
Please help me and please also tell if there is some alternative to do the same.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…