gpt4 book ai didi

error-handling - Ansible:模拟一个 "passed when"模块

转载 作者:行者123 更新时间:2023-12-04 06:36:52 24 4
gpt4 key购买 nike

Ansible 提供了 failed_when模块,允许用户在他们的任务上指定某些失败条件,例如在 stdout 或 stderr 中找到某个字符串。

我试图做相反的事情:如果在 stdout 或 stderr 中找到任何一组字符串,我希望我的任务不会失败。换句话说,我想要一些接近 passed_when 功能的东西。模块。

  • 我还是希望返回码为0的时候能正常通过
  • 但是如果它会失败(rc!= 0)那么它应该首先检查一些字符串的出现。
  • IE。如果找到某个字符串,无论如何它都会通过。

  • 我的推理是这样的:

    There are many reasons why the task could fail - but some of these, depending on the output, I do not consider as a failure in the current context.



    有人知道如何实现这一目标吗?

    最佳答案

    看看这里:

    Is there some Ansible equivalent to "failed_when" for success

    - name: ping pong redis
    command: redis-cli ping
    register: command_result
    failed_when:
    - "'PONG' not in command_result.stderr"
    - "command_result.rc != 0"
  • 如果返回码为 0 并且 stderr 中没有“PONG”,则不会失败。
  • 如果 stderr 中有“PONG”,则不会失败。

  • 因此,如果列表中的任何一个为 False,它就会通过

    关于error-handling - Ansible:模拟一个 "passed when"模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27835797/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com