Ansible在变量中使用变量

Ansible在变量中使用变量,ansible,Ansible,我试图在变量中使用变量 变量: env: dev groupname: (Dynamic variable which comes as stdout of ansible task ) 任务: - name: var to trim set_fact: trim_var: "{{ groupname.split(\"test-{{ env }}-\") }}" 但是它不能用dev替换env。有人能帮忙吗?你永远不会嵌套{{…}标记。您已经在Jinja上下文中,因

我试图在变量中使用变量

变量:

env: dev  
groupname: (Dynamic variable which comes as stdout of ansible task )
任务:

- name: var to trim  
  set_fact:  
    trim_var: "{{ groupname.split(\"test-{{ env }}-\") }}"  

但是它不能用dev替换env。有人能帮忙吗?

你永远不会嵌套
{{…}
标记。您已经在Jinja上下文中,因此您可以正常地编写变量:

- name: var to trim  
  set_fact:  
    trim_var: "{{ groupname.split('test-' ~ env ~ '-') }}"
请注意,Jinja
~
运算符的行为类似于
+
,但它将首先将其操作数转换为字符串(在本例中,这并不重要,但在处理非字符串的变量时非常有用)