更新自定义模块中的支柱数据?

时间:2019-04-09 11:11:59

标签: salt-stack

我想在自定义模块中更新支柱数据。

背景:我想设置一些默认值。

这将使jinja中的代码更简单,因为我可以在一个地方创建默认值(在自定义模块中)和N个无条件使用支柱数据(在jinja中)。

例如,到目前为止,代码看起来是这样的(在几个地方):

{% if pillar.database_replication|default(False) %}

我想在自定义模块中设置默认值。

那么这就足够了:

{% if pillar.database_replication %}

我的目标是简化sls文件。

我使用的是Salt版本2019.2.0。

1 个答案:

答案 0 :(得分:1)

我认为您可以做的是拥有一个“默认”支柱文件,该文件先于其他文件加载。

在top.sls支柱中这样的事情

base:
  '*':
     - defaults

# rest of pillar to load

然后您可以使用defaults.sls

# default pillars for all minions
database_replication: False

然后:

  • 如果一个小兵没有特定的值:您将获得默认值
  • 如果一个奴才具有特定的值,则在加载“默认值”后对其进行设置,以便覆盖它,从而获得该奴才特定的值