2016-05-18 11 views
0

他のグループのプレイを実行中にグループ変数を参照することは可能ですか?テンプレート内の可能なインベントリ変数の使用

私はそのような特定の場合があります。

の/ etc/ansible /ホスト

それが機能していないグループ1

- name: test variables... 
    hosts: group1 
    gather_facts: no 
    tasks: 
     - debug: msg="foo={{ groups[group2].foo }}" 

のための演劇を実行

[group1] 
server1.test.org 

[group2] 
server2.test.com 

[group2:vars] 
foo=bar 

を、私は他の試してみました構文変種は成功しません。

答えて

0

グループには、インベントリの初期化時に実際に変数が定義されていません。ホストは、グループ変数に定義されているもののコピーを取得します。だから、あなたが望むことをするためには、ホストから読む必要があります。試してみてください:

- name: test variables... 
    hosts: group1 
    gather_facts: no 
    tasks: 
    - debug: msg="foo={{ hostvars[groups['group2'][0]].foo }}" 
+0

ありがとう[Petro026](http://stackoverflow.com/users/2847921/petro026) –

関連する問題