SaltStack SLS Template Variable Reference - SLS模板變量使用參考

可用於sls文件和文件模板的模板引擎加載了許多上下文變量。 這些變量包含幫助模板生成的信息和功能。 請參見下面的每個變量以瞭解其可用性–並非所有變量在所有模板環境中都可用。

您也可以參考在Github上維護的這一份技術資料:SLS Template Variable Reference

Salt

salt變量用於抽象salt庫函數。 此變量是python字典,其中包含運行中的Salt Minion可用的所有功能函數。 在所有salt模板中均可用。

{% for file in salt['cmd.run']('ls -1 /opt/to_remove').splitlines() %}
/opt/to_remove/{{ file }}:
  file.absent
{% endfor %}

Opts

opts變量將minion的配置文件的內容直接抽象到模板中。 opts變量是字典。 在所有模板中均可用。

{{ opts['cachedir'] }}

config.get函數也是在opts詞典中搜索值。

Pillar

pillar字典可以直接引用,並且在所有模板中可用:

{{ pillar['key'] }}

通常建議通過salt變量調用pillar.get函數,因爲這可以在沒有值的情況下安全地設置一個默認值,並且可以直接遍歷字典:

{{ salt['pillar.get']('key', 'failover_value') }}
{{ salt['pillar.get']('stuff:more:deeper') }}

Grains

grains字典使minions的grains直接可用,並且在所有模板中可用:

{{ grains['os'] }}

grains.get函數可用於遍歷更深的grains並設置默認值:

{{ salt['grains.get']('os') }}

saltenv

從環境收集sls時,saltenv變量僅在sls文件中可用。

{{ saltenv }}

sls

sls變量包含sls參考值,並且僅在實際的SLS文件中可用(在該SLS中引用的任何文件中均不可用)。 sls參考值是用於在top file文件中或通過include選項將sls包括在內的值。

{{ sls }}

slspath

slspath變量包含當前sls文件的路徑。 當前sls中引用的文件中slspath的值取決於引用方法。 對於jinja includes,slspath是當前文件的路徑。 對於salt includes,slspath是包含文件的路徑。

{{ slspath }}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章