我试图从sqlite3数据库中提取结果(设置为外部盐柱)并使用jinja模板来设置谷物数据 .
这是我的salt主文件的相关部分:
sqlite3:
database: '/var/lib/salt/stations.db'
timeout: 5.0
ext_pillar:
- sqlite3:
fromdb:
query: 'SELECT * FROM table;'
这是我用来创建grain文件的init.sls文件的相关部分:
{% set station_id = salt['grains.filter_by']({
{% for row in query_result %}
{% hostname = station_id %}
}, default="UNKNOWN", grain="host") %}
我确认外柱通过跑步产生结果
salt '*' sqlite3.fetch /var/lib/salt/stations.db 'SELECT * FROM test;'
但我无法弄清楚如何将结果输入jinja文件 .
我想要类似的东西
'SELECT * FROM table WHERE hostname=station_id LIMIT 1;'
并使用结果设置名为“hostname”的grain环境变量 .
但我不确定如何从这里到达那里 .
任何帮助是极大的赞赏 .
1 回答
感谢Saltstack IRC的优秀人员解决了这个问题 .
主:
init.sls: