SLS TEMPLATE VARIABLE REFERENCE

Posted 孤独的海浪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SLS TEMPLATE VARIABLE REFERENCE相关的知识,希望对你有一定的参考价值。

SLS TEMPLATE VARIABLE REFERENCE

sls文件中的模板变量,可用于SLS文件和文件模板的模板引擎装载了大量的上下文变量。这些变量包含的信息和功能来辅助生成的模板。请查看下面每个变量的可用性——并非所有变量都在所有模板上下文中可用。


SALT

salt命令,可以在所有salt模板中使用,这个变量作为所有函数组成的字典里面的键形式调用
示例:

技术分享
1 {% for file in salt[‘cmd.run‘](‘ls -1 /opt/to_remove‘).splitlines() %}
2 /opt/to_remove/{{ file }}:
3   file.absent
4 {% endfor %}
View Code

OPTS

opts变量,被存放在minion端的配置文件中,在所有模板中有效,可以使用config.get函数来获取opts变量字典,该变量包含的内容很多,如grains,pillar等
{{ opts[‘cachedir‘] }}


PILLAR

pillar变量字典直接可以在模板中被使用,所有模板均有效,也可以通过pillar.get函数来获取,这样更安全(可以设置默认值)
{{ pillar[‘key‘] }}
{{ salt[‘pillar.get‘](‘key‘, ‘failover_value‘) }}
{{ salt[‘pillar.get‘](‘stuff:more:deeper‘) }}


GRAINS

可是直接使用字典引用,或者使用grains.get函数获取,对于所有模板有效
{{ grains[‘os‘] }}
{{ salt[‘grains.get‘](‘os‘) }}


SALTENV

仅在sls文件中从某一环境搜集sls文件时使用,通常用于top sls文件中
{{ saltenv }}


SLS

sls变量包含sls引用值,仅在实际的sls文件中获取,通常被用于在top.sls文件中包含sls文件或包含的路径选项


SLSPATH

slspath变量包含当前sls文件的路径,对于jinja模板而言值为当前文件的路径,对于salt include而言则是包含文件的路径

 









以上是关于SLS TEMPLATE VARIABLE REFERENCE的主要内容,如果未能解决你的问题,请参考以下文章

saltstacksaltstack自动化运维(master与minion配置远程执行sls文件modulesgrainsjinjapillar)

FreeMarker : How to check if a variable exists in a FreeMarker template

Missing URI template variable ‘XX‘ for method parameter of type int

Tensorflow Variable&Constant

vue3 template refs dom的引用组件的引用获取子组件的值

vue3 ts 获取组件 ref 实例