簡體   English   中英

Ansible檢查字典是否存在

[英]Ansible check if dictionary exists

我想部署其他mysql用戶 - 如果設置。 所以我正在使用字典。 例如:

mysql_additional_users:
  user1:
    password: mysecretpass
    privs: "database1.*:ALL"

只要定義了dict,它就可以正常工作。 如果不是 - 它失敗了。

雖然我試圖確定,如果定義了dict:

  - name: create additional mysql users
    mysql_user: name={{ item.key }} password={{ item.value.password }} priv={{ item.value.privs }} state=present      
    with_dict: "{{ mysql_additional_users }}"
    when: mysql_additional_users is defined 

但我總是得到一個錯誤:

fatal: [<hostname>]: FAILED! => {"failed": true, "msg": "ERROR! 'mysql_additional_users' is undefined"}

有任何想法嗎 ?

with_dict評估with_dict 如果你想在when使用它,試試這個:

with_dict: mysql_additional_users | default({})
when: mysql_additional_users is defined

它會評估為空字典,但該任務將被跳過when

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM