3
ansible脚本にホストグループからの辞書のリストを作成します。は、私は動的にこのようになります辞書のリストを作成したい
この変数は、私が使用している役割に必要です。この劇で
[WARNING]: While constructing a mapping from stack.yml, line 16, column 3, found a duplicate dict key (vars). Using last defined value only.
そして、エラー:
fatal: [192.168.0.21]: FAILED! => {"failed": true, "msg": "ERROR! 'zk_hosts' is undefined"}
私は脚本を実行したときに、私はこの警告を持っている、しかし
- hosts:
- some-hosts
vars:
zk_hosts: []
tasks:
- name: create my var
set_fact:
zk_hosts: "{{ zk_hosts + [ {'host': item.1, 'id': item.0} ] }}"
with_indexed_items: "{{ groups.some-hosts }}"
:
私の試みは、以下のとおりです。ファクトを設定する前にzk_hosts
を定義していないと、変数が定義されていないというエラーが表示されます。
どうすれば解決できますか?
EDIT
簡単に修正は、私はちょうど...同じタスク内zk_hosts
を定義し
tasks:
- name: create my var
vars:
zk_hosts: []
set_fact:
zk_hosts: "{{ zk_hosts + [ {'host': item.1, 'id': item.0} ] }}"
with_indexed_items: "{{ groups.some-hosts }}"
、同じことを達成するためのより少ない面倒な方法がある場合は、お知らせ下さい!