通过支柱数据和jinja模板进行问题迭代。我从一个正在工作的salt/pillar安装中获取了大部分模板,但现在无法在新环境中工作。在
我在迭代的实现中尝试了几种不同的语法,但仍然得到相同的错误。在
服务器名:
Rendering SLS 'base:pillar_lab_user' failed: Jinja variable 'str object'
没有属性“iteritems”
^{pr2}$支柱数据
users:
user1:
fullname: User1 Fullname
uid: 951
gid: 951
shell: /bin/bash
groups:
- sudo
- admin
password: (REMOVED)
pub_ssh_keys: (REMOVED)
user2:
fullname: User2 Fullname
uid: 955
gid: 955
shell: /bin/bash
groups:
- sudo
- admin
password: (REMOVED)
pub_ssh_keys: (REMOVED)
{%为用户,参数为用户.iteritems()%}
iteritems和通过jinja模板访问数据的正确语法是什么。 我已经尝试过这种语法的许多变体,但是仍然得到
ServerName:
Data failed to compile:
----------
Rendering SLS 'base:pillar_lab_user' failed: Jinja variable 'str object'
没有属性“iteritems”
这都是用户错误,支柱配置格式不正确。我删除了第一行
"{% set users = salt['pillar.get']('XXXXXXX') %}"
所以我没有用支柱。获取以柱子为目标顶部.sls. 它现在正常工作了。在
您的数据应失败:
Rendering SLS 'base:so' failed: Jinja variable 'dict object' has no attribute 'empty_password'
您看到此错误的原因一定是由于不存在的支柱数据造成的。在
您已经粘贴了完整的支柱数据,但在状态文件中留下了
XXXXXXX
。 这表明修复可能很简单:或者,如果不是这样:请检查您是否使用
^{pr2}$pillarenv
,然后记住传递正确的一个,您只需在命令行中验证:如果它不返回您的词典,请尝试:
相关问题 更多 >
编程相关推荐