Saltstack:忽略cmd.run的结果

miz*_*zmu 10 salt-stack

我试图通过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 中进行了测试,但可能适用于早期版本。