Ansible 如何在ansbile剧本中使用变量的第二个值

Ansible 如何在ansbile剧本中使用变量的第二个值,ansible,yaml,ansible-2.x,Ansible,Yaml,Ansible 2.x,我想在两个不同的地方使用组变量的2个值。我当前的组变量看起来像这样 [test1:vars] fooname=foo1 barname=bar1 我在剧本中使用jinja模板作为{{fooname}和{{{barname}基于我在剧本中的多个地方的要求。现在不是两个不同的变量,我想用它作为一个变量作为名称,我想在不同的地方使用它的值 预期的组变量: [test1:vars] names=foo1,bar1 有没有一种方法,现在我可以用一些函数或条件调用{{names}}变量,比如{names

我想在两个不同的地方使用组变量的2个值。我当前的组变量看起来像这样

[test1:vars]
fooname=foo1
barname=bar1
我在剧本中使用jinja模板作为{{fooname}和{{{barname}基于我在剧本中的多个地方的要求。现在不是两个不同的变量,我想用它作为一个变量作为名称,我想在不同的地方使用它的值

预期的组变量:

[test1:vars]
names=foo1,bar1
有没有一种方法,现在我可以用一些函数或条件调用{{names}}变量,比如{names Is search(foo)}或者{names Is search(bar)}在剧本中,就像我们在条件中使用的那样,这样我就可以避免声明2个变量而不是1个。我将在我的剧本中的不同地方使用这些变量

我尝试使用上面打印“True”的变量,而不是我需要的变量值,当我相应地搜索时,它只有foo或bar


注意:我有近400组,与相同的模式使额外的变量使我的库存很长。因此,我希望将其最小化。

Ansible 2支持清单文件中的数组

[test1:vars]
names=["foo","bar"]
但也有一些局限性

[example:vars]
# working
var1=["foo","bar"]
var2=[1,2]
var3=[True, False]

# not working
var4=[yes, no] # Boolean need to be True and False
var5=[foo, bar] # Interpreted as one string
var6='["foo","bar"]' # Interpreted as one string as well
用法示例:

- debug:
  - msg: "Item: {{ example[0] }}"

- debug:
  - msg: "Item: {{ example | first }}"

Ansible 2支持清单文件中的数组

[test1:vars]
names=["foo","bar"]
但也有一些局限性

[example:vars]
# working
var1=["foo","bar"]
var2=[1,2]
var3=[True, False]

# not working
var4=[yes, no] # Boolean need to be True and False
var5=[foo, bar] # Interpreted as one string
var6='["foo","bar"]' # Interpreted as one string as well
用法示例:

- debug:
  - msg: "Item: {{ example[0] }}"

- debug:
  - msg: "Item: {{ example | first }}"

如何在playbook中使用此数组?如何在playbook中使用此数组?