[英]Variable of variable in Ansible Playbook
我正在嘗試訪問在group_vars
定義的group_vars
group_vars /全部
parent1:
child1: somevalue1
child2: somevalue2
parent2:
child1: somevalue1
child2: somevalue2
現在我從像這樣的ansible劇本的額外變量中傳遞parent
細節
ansible-playbook playbook.yml -e "parent=parent1"
現在,我如何才能獲得parent1.child1
值,其中parent1
進來{{ parent }}
瓦爾?
我的劇本看起來像這樣:
playbook.yml
- hosts: local
user: roop
gather_facts: no
connection: local
vars:
parent: ""
tasks:
#get parent value
- debug: msg={{ parent }}
#trying to access parent1.child1 value here
- debug: msg={{ {{ parent }}.child1 }}
劇本輸出:-
PLAY [local] ******************************************************************
TASK: [debug msg=local] *******************************************************
ok: [127.0.0.1] => {
"msg": "parent1"
}
TASK: [debug msg={{{{parent}}.child1}}] ***************************************
ok: [127.0.0.1] => {
"msg": "{{{{parent}}.child1}}"
}
PLAY RECAP ********************************************************************
127.0.0.1 : ok=2 changed=0 unreachable=0 failed=0
任何人都可以指導我如何實現此目標或任何其他解決方案。
我是如何做到的
更改group_vars /如下所示:-
data:
parent1:
child1: somevalue1
child2: somevalue2
parent2:
child1: somevalue1
child2: somevalue2
在playbook.yml中進行更改:-
- debug: msg={{ data[parent].child1 }}
如果您有更好的解決方案,請分享:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.