查看关于error handlingAnsibleerror handling的文档
我只看到一个方法来configuration失败fail_when,我想知道是否有任何方法来做相反的事情。
看起来像这样的东西:
- name: ping pong redis command: redis-cli ping register: command_result succees_when: "'PONG' in command_result.stderr"
谢谢。
我想可能断言模块是你想要的。
1.5版本中的新功能
例子:
- assert: { that: "ansible_os_family != 'RedHat'" }
似乎没有这样的功能,至少我在邮件列表上的建议仍然没有得到回应:
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
它就会通过