【问题标题】:Ansible Jinja TemplatingAnsible Jinja 模板
【发布时间】:2018-06-19 09:47:37
【问题描述】:

我有一本这样的字典:

users:
  sammy:
    status: employed
  chris:
    status: unemployed
  dan:
    status: employed

我需要设计一个 jinja 模板,以便输出如下所示,按字母顺序仅显示已使用的用户:

<Directory /var/www/html/dan>
      Require group dan
</Directory>
<Directory /var/www/html/sammy>
      Require group sammy
</Directory>

到目前为止,我已经得到了这个模板,但不知道如何选择仅雇佣用户并让他们按字母顺序

{% for user in users %}
<Directory /var/www/html/{{ user }}>
  Require group {{ user }}
</Directory>  
{% endfor %}

【问题讨论】:

  • 请特别检查built-in filtersselectattrsort
  • 再次感谢@KonstantinSuvorov 的帮助。您使用什么工具来调试 Jinja 模板?

标签: templates ansible jinja2


【解决方案1】:
{{ ansible_managed | comment }}

{% for user in users|dictsort %}
    {% if user.1.status == 'employed' %}
        <Directory /var/www/html/files/{{ user.0 }}>
           Require group portal_{{ user.0 }}
        </Directory>
    {% endif %}
{% endfor %}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-24
    • 2020-02-13
    相关资源
    最近更新 更多