是否有一些 Ansible 相当于成功的“failed_when”

问题描述 投票:0回答:2

查看有关错误处理的文档 Ansible 错误处理

我只看到一种使配置失败的方法,我想知道是否有任何方法可以做相反的事情。

看起来像这样的东西:

- name: ping pong redis
  command: redis-cli ping
  register: command_result
  success_when: "'PONG' in command_result.stderr"

谢谢。

linux ansible
2个回答
15
投票

好像没有这个功能,至少我在邮件列表上的建议仍然没有回复:

https://groups.google.com/forum/#!topic/ansible-project/cIaQTmY3ZLE

可能有帮助的是知道

failed_when
的行为与其语义不同:

- 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”,则

不会失败。 因此,如果列表中的任何一个是 False

,则通过
    


6
投票
我想也许

断言模块就是你想要的。

1.5版本新功能

示例:

- assert: { that: "ansible_os_family != 'RedHat'" }

    
© www.soinside.com 2019 - 2024. All rights reserved.