我试图通过Saltstack调用配置命令.如果命令失败,那么我得到状态失败,我不希望它(命令的重新编码无关紧要).
目前我有以下解决方法:
Run something:
cmd.run:
- name: command_which_can_fail || true
Run Code Online (Sandbox Code Playgroud)
有没有办法使用salt功能使这种状态忽略retcode?或者我可以从日志中排除这种状态?
oeu*_*ete 10
用途check_cmd:
fails:
cmd.run:
- name: /bin/false
succeeds:
cmd.run:
- name: /bin/false
- check_cmd:
- /bin/true
Run Code Online (Sandbox Code Playgroud)
输出:
local:
----------
ID: fails
Function: cmd.run
Name: /bin/false
Result: False
Comment: Command "/bin/false" run
Started: 16:04:40.189840
Duration: 7.347 ms
Changes:
----------
pid:
4021
retcode:
1
stderr:
stdout:
----------
ID: succeeds
Function: cmd.run
Name: /bin/false
Result: True
Comment: check_cmd determined the state succeeded
Started: 16:04:40.197672
Duration: 13.293 ms
Changes:
----------
pid:
4022
retcode:
1
stderr:
stdout:
Summary
------------
Succeeded: 1 (changed=2)
Failed: 1
------------
Total states run: 2
Run Code Online (Sandbox Code Playgroud)
小智 5
如果你不关心命令的结果是什么,你可以使用:
Run something:
cmd.run:
- name: command_which_can_fail; exit 0
Run Code Online (Sandbox Code Playgroud)
这在 Salt 2017.7.0 中进行了测试,但可能适用于早期版本。