如何在盐堆时间表中设置 state_output=更改?



我有一个盐调度调用state.apply并使用highstate returner写出一个文件。 计划将按预期启动,并且正在创建输出文件,但所有未更改的状态都包含在输出中。

在命令行上,我只会强制使用盐--state_output=changes选项的差异和错误。

有没有办法以某种方式在时间表中包含设置state_output=changes

我在支柱数据中定义时间表,它看起来像这样:

schedule:
mysched:
function: state.apply
seconds: 3600
kwargs:
test: True
returner: highstate
returner_kwargs:
report_format: yaml
report_delivery: file
file_output: /path/to/mysched.yaml

我通过按如下方式切换时间表来解决此问题。 调度不是直接调用 state.apply,而是使用 cmd.run 来启动执行 state.apply 的 salt-call 命令,并且该命令可以包含状态输出标志。

schedule:
mysched:
function: cmd.run
args:
- "salt-call state.apply --state-output=changes --log-level=warning test=True > /path/to/mysched.out 2>&1"
seconds: 3600

最新更新