我有一个盐计划调用state.apply并使用highstate返回器写出一个文件。计划已按计划启动,正在创建输出文件,但是所有未更改的状态都包含在输出中。
在命令行上,我仅将diff和错误强制为salt的--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命令,并且该命令可以包含state-output标志。
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