盐:支柱数据的属性?

我想要从saltstack支柱的数据属性(计算属性):

我们像这样构build我们的系统:

systems: - customer: foo project: bar stage: p ... - customer: foo project: bar stage: q ... 

我想计算一个像这样的variables“system.name”: "{customer}_{project}_{stage}"

从上面的例子我会得到这两个计算值:

  • system.name =“foo_bar_p”
  • system.name =“foo_bar_q”

我可以像system.customersystem.project一样访问system.name

如何做到这一点?

我不认为你可以定义你喜欢的属性。

但是,您可以使用jinja命令在状态文件或模板中计算此值。 例如:

 {% for system in salt['pillar.get']('systems', []) %} {% do system.update({'name': system.customer + '_' + system.project + '_' + system.stage}) %} test_state_for_{{ system.name }}: test.configurable_test_state: - result: False - comment: {{ system }} {% endfor %} 

在这个例子中, system字典用name计算值更新(合并): system.customer + '_' + system.project + '_' + system.stage