【问题标题】:Salt stack execute a command/invoke a different state upon state failureSaltstack 在状态失败时执行命令/调用不同的状态
【发布时间】:2020-03-07 18:52:13
【问题描述】:

我正在尝试在 sls 文件中运行多个状态,并且我需要在状态失败时执行命令。

例如

    test_cmd1:
        cmd.run:
          - name: |
               echo 'Command 1'

    test_cmd2:
        cmd.run:
          - name: |
               echo 'Command 2'

    on_fail_command:
        cmd.run:
          - name: |
                echo 'On failure'
                exit 1

我希望在 test_cmd1 或 test_cmd2 中的任何一个失败时执行 on_fail_command...但在两个测试命令都成功执行时不运行。我在我们的系统中全局设置了 failHard 为 True。

我尝试使用 onfail 但这并不符合我的要求。如果 onfail 下列出的任何状态失败,onfail 就会执行一个状态,但这里我希望在状态失败时跳过执行其他状态,而是跳转到 on_fail_command 然后退出。

【问题讨论】:

    标签: salt-stack


    【解决方案1】:

    设置on_fail_command 状态的order 使其先于其他任何东西运行,而failhard 则使整个工作失败。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-25
      • 1970-01-01
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 2022-07-11
      • 2021-10-17
      • 1970-01-01
      相关资源
      最近更新 更多