給定這本字典:
passes:
sql_x:
password:
sql_y:
password:
passes我想為字典中的任何鍵創建隨機密碼。
如何遍歷字典中的鍵并password用隨機密碼填充值?
我可以用一個串列來做,但我需要使用一個字典。
像這樣的東西:
- name: create passwords
set_fact: "{{ item.value.password}}": "{{ lookup('password', '/dev/null', seed=inventory_hostname) }}"
loop: "{{ lookup('dict', passes) }}"
上面的代碼當然不起作用,只是為了清除我想要實作的目標。
感謝您的任何提示。
uj5u.com熱心網友回復:
你回圈 dict2items
- name: "make this working"
hosts: localhost
vars:
passes:
sql_x:
password:
sql_y:
password:
tasks:
- name: Debug
set_fact:
passes: "{{ passes | combine ({item.key: {'password': password}}) }}"
loop: "{{ passes | dict2items }}"
vars:
password: "{{ lookup('password', '/dev/null') }}"
- name: display
debug:
msg: "{{ passes }}"
結果:
ok: [localhost] => {
"msg": {
"sql_x": {
"password": "kcOqz_mbIiiT0Wo_2Qox"
},
"sql_y": {
"password": "TMN_nKbnAEIzI5w-8Of."
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/431523.html
下一篇:以字串開頭的鍵的子集字典
