der*_*ert 3 dictionary conditional-statements ansible ansible-playbook
我想部署其他mysql用户 - 如果设置.所以我正在使用字典.例如:
mysql_additional_users:
user1:
password: mysecretpass
privs: "database1.*:ALL"
Run Code Online (Sandbox Code Playgroud)
只要定义了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
Run Code Online (Sandbox Code Playgroud)
但我总是得到一个错误:
fatal: [<hostname>]: FAILED! => {"failed": true, "msg": "ERROR! 'mysql_additional_users' is undefined"}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
with_dict总是被评估.如果你想使用它when,试试这个:
with_dict: mysql_additional_users | default({})
when: mysql_additional_users is defined
Run Code Online (Sandbox Code Playgroud)
它将评估为空dict,但任务将被跳过when.
| 归档时间: |
|
| 查看次数: |
8551 次 |
| 最近记录: |