我正在创建一个状态,如果两个颗粒都不匹配,它将触发某个模块。我尝试了几种选择,但是没有运气。
基于比较,False将触发我的模块,并且该模块将更改GRAIN_B值以与GRAIN_A匹配。因此,在每个高态期间,除非GRAIN_A发生变化,否则不会触发我的模块。
请提出任何建议。
我尝试了几种神兽表情。
{% if grains['GRAIN_A'] not in grains.get('GRAIN_B','None') %}
{% set GRAIN_B = grains.get('GRAIN_B','None') %}
{% if grains['GRAIN_A'] != {{ GRAIN_B }} %}```
```{% if grains['GRAIN_A'] not in grains.get('GRAIN_B','None') %}
MY_MODULE:
module.run:
- func: MYMODULE.FUNCTION_A
{% endif %}```
答案 0 :(得分:0)
问题已解决,我的GRAIN_A输出中有一个\ n字符,这使得评估条件失败。
此条件已经有效。
{% if grains['GRAIN_A'] not in grains.get('GRAIN_B','None') %}
MY_MODULE:
module.run:
- func: MYMODULE.FUNCTION_A
{% endif %}