首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >map.jinja中的Jinja变量

map.jinja中的Jinja变量
EN

Stack Overflow用户
提问于 2014-11-13 02:52:47
回答 1查看 2.5K关注 0票数 0

我试图在map.jinja中设置一个动态变量,但它没有正确设置。

我有一个软件版本,我希望能够设置一个谷物,并在地图中获取它,以动态选择目录。我使用的关键字版本如下所示。

map.jinja

代码语言:javascript
复制
{% set version = grains.get('version', '') %}
{% set myapp = salt['grains.filter_by']({
    'RedHat': {
        'sudoers': {
            'name': '/etc/sudoers',
            'text':['appuser ALL=(root) NOPASSWD: /bin/sh /usr/opt/HTTP{{ version }}/bin/apachectl'],
        },
    },
}, merge=salt['pillar.get']('myapp:lookup')) %}

结果就是jinja模板标签没有呈现到版本号.

盐'10.0.1.15‘state.show_sls myapp

代码语言:javascript
复制
/etc/sudoers:
    ----------
    __env__:
        base
    __sls__:
        myapp.accounts
    file:
        |_
            ----------
            text:
                |_
                    ----------
                    appuser ALL=(root) NOPASSWD: /bin/sh /usr/opt/HTTP{{ version }}/bin/apachectl

请注意线路没有变化..。它没有被渲染

我的进口线:

代码语言:javascript
复制
{% from "myapp/map.jinja" import myapp %}
/etc/sudoers:
    file.append:
        - text:
            {% for item in myapp.sudoers.text -%}
            - {{ item }}
            {% endfor %}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-13 23:00:52

结果,我需要在状态文件中引用{{ item }}

代码语言:javascript
复制
{% from "myapp/map.jinja" import myapp %} /etc/sudoers: file.append: - text: {% for item in myapp.sudoers.text -%} - '{{ item }}' {% endfor %}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26900554

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档