运行salt '*' state.highstate
时,我的SLS文件无法呈现,并显示以下消息:
Data failed to compile:
----------
Rendering SLS 'base:files' failed: Jinja syntax error: no filter named 'yaml_encode'; line 6
---
{% for folder, options in salt['pillar.get']('dirs', {}).items() %}
{{ folder }}:
{%- load_yaml as foo %}
file.directory:
{% for key, val in options.items() %}
- {{ key }}: {{ val|yaml_encode }} <======================
{% endfor %}
- order: 1
{%- endload %}
{% endfor %}
---
The docs显示此过滤器只是在您想要转义YAML的地方使用,所以我不知道为什么没有定义过滤器。
所有minions和master都在运行Ubuntu Server 14.04,并从Launchpad PPA
运行Salt 2014.7.1答案 0 :(得分:1)
虽然过滤器已记录在案,但由于文档是从当前的开发分支生成的,而不是最新的稳定分支,因此会产生误导。
The docs for older versions are available from readthedocs.org.
The pull request that introduced this feature尚未得到&#34;合并回#34;进入2014.7。