1
私は2つのMySQLデータベースの特権を、異なるIPからAnitectを使ってユーザーに与えます。私は今持っている: バール:リストと変数をループで返す
#users
root_user: 'root'
root_password: 'root'
prosody_user: 'prosody'
prosody_password: 'prosody'
#databases
oauth_db: "oauth"
#hosts
prosody_hosts: ['10.0.1.4', '10.0.1.5']
タスク:
- name: add or update mysql user prosody
mysql_user:
name: "{{ prosody_user }}"
host: "{{ item.host }}"
password: "{{ prosody_password }}"
login_user: "{{ root_user }}"
login_password: "{{ root_password }}"
check_implicit_admin: yes
append_privs: yes
priv: "{{ item.database }}.*:ALL,GRANT"
with_items:
- { host: "{{ prosody_hosts[0] }}", database: "{{ oauth_db }}" }
- { host: "{{ prosody_hosts[1] }}", database: "{{ oauth_db }}" }
- { host: "{{ prosody_hosts[0] }}", database: "{{ prosody_db }}" }
- { host: "{{ prosody_hosts[1] }}", database: "{{ prosody_db }}" }
配列要素の直接の呼び出しは非常に見栄えしませんが。私はちょうどループがprosody_hostsの配列with_itemの指示で、それはデータベースの配列ではない配列をしたいです。
目標は、このような何かを得るためにすることです:事前に
...
with_items
- { host: "{{ prosody_hosts }}", database: "{{ oauth_db }}" }
- { host: "{{ prosody_hosts }}", database: "{{ prosody_db }}" }
ありがとう!