在 Salt 中设置变量列表,然后导入到另一个文件中

Setting out a list of variables in Salt and then importing into another file

是否可以设置一个盐变量列表如:

{% set foo = '1234' %}
{% set bar = '10.1.1.2' %}
{% set environment = salt['grains.get']('env') %}

然后将它们导入单独的 .sls 文件并像这样使用它们:

foo_value = {{ foo }} # sets foo to '1234'
bar_value = {{ bar }} # sets bar to '10.1.1.2'
etc...

最合适的应该是 import 特征。 您可以按照问题中的描述存储带有变量的文件,然后像这样导入它们:

{% from 'yourfile.jinja' import foo with context %}
{% from 'yourfile.jinja' import bar with context %}
{% from 'yourfile.jinja' import environment with context %}

或者您可以将它们全部添加到一个数组中:

{% set vars = {
  'foo': '1234',
  'bar': '10.1.1.2',
  'environment': salt['grains.get']('env'),
  }
%}

然后一次性导入:

{% from 'yourfile.jinja' import vars with context %}

Salt Best Practices page 中描述了使用变量(和导入)的最佳实践。