0

我有一个对 sudoers 执行以下操作的模板:

{% for a in  cde_admins  %}
User_Alias  CDEADMIN = {{ a }}
{% endfor %}

我定义了变量:

cde_admins:
  - foo
  - bar

我正在寻找一种可以遍历循环并,在 foo 之后添加的方法。所以当我运行 Ansible 时,它​​基本上看起来像这样:

User_Alias  CDEADMIN = foo, bar

我已经尝试了一些事情,比如join(",")在 Jinja2 语法中添加 a ,但所做的只是:

User_Alias  CDEADMIN = f,o,o
User_Alias  CDEADMIN = b,a,r

有人可以指出正确的方向来使它只是在末尾添加一个逗号foo吗?

4

1 回答 1

1

您应该使用join过滤器,但在原始列表上,而不是在项目上:

User_Alias CDEADMIN = {{ cde_admins|join(', ') }}

只有上面的行,没有for-loop。

于 2017-10-06T04:56:37.417 回答