Ansible:您可以在另一个变量内迭代一个变量吗?

时间:2019-03-15 09:44:56

标签: ansible

我已经看到了:

ansible - variable within variable

但不确定是否可以应用。

我已经在Ansible变量中找到了它:

 some_text_variable: |
     A paragraph of text containing
     a list like this:
         - A
         - B
         - C
     and more text
some_other_variable: "something else"

然后我将其输出到这样的模板中:

{{ some_text_variable }}

但是我想以某种方式在some_text_variable变量中进行迭代,以便可以将ABC元素放在外部。

即因此我可以在一场比赛中输出some_text_variable,它有ABC,但在另一场比赛中,它可能有DEF

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

让我们重复一下。下面的游戏

vars:
  my_list:
    - A
    - B
    - C
tasks:
  - set_fact:
      some_text_variable: |
        A paragraph of text containing
        a list like this:
        {% for item in my_list %}
            - {{ item }}
        {% endfor %}
        and more text
      some_other_variable: "something else"
  - debug: msg="{{ some_text_variable.split('\n') }}"

给予

"msg": [
"A paragraph of text containing", 
"a list like this:", 
"    - A", 
"    - B", 
"    - C", 
"and more text", 
""
]