将柱子从一个状态传递到反应堆

pass pillar to reactor from a state

我有一个 orchestrator,它在一堆 minions 上应用一些东西。 此外,有一个反应器正在侦听从状态返回的某个事件,“- fire_event:我的自定义标签”。 我需要的是以某种方式将 pillar 数据从状态传递到反应堆,这可能吗?

最好的方法是在您发送的事件中包含支柱数据。如果您使用 event.send 状态发送事件,您可以在状态中包含 with_pillar: true,以包含所有支柱数据。如果你不想包含所有的支柱,你可以使用 jinja 将你想要的支柱渲染到数据部分。

event sending:
  event.send:
    - name: event/tag/like/normal
    - data:
        item1: {{salt["pillar.get"]('thing1')}}
        item2: {{salt["pillar.get"]('etc')}}

数据中的事物将包含在到达反应堆的事件中。