Ansible-条件if存在且不是条件时失败

Ansible-条件if存在且不是条件时失败,ansible,Ansible,我试图在关键字存在时使用failed_获得一个条件,但如果另一个关键字存在,则不使用failed_。大概是这样的: - name: Check Logs for error command: kubectl logs -l app={{ service_name }} -n {{ service_name }} register: log failed_when: "'error' in log.stdout|lower and not 'error listeners' in log

我试图在关键字存在时使用failed_获得一个条件,但如果另一个关键字存在,则不使用failed_。大概是这样的:

- name: Check Logs for error
command: kubectl logs -l app={{ service_name }} -n {{ service_name }}
register: log
failed_when: "'error' in log.stdout|lower and not 'error listeners' in log.stdout|lower"

我知道这不是一个好的实践,但在我们让dev实现更好的修复之前,这是一个临时解决方案。捕捉错误并使其失败的最佳方法是什么,而不是当另一个字符串位于标准输出中时(此错误正在写入到标准输出中)

上面的代码用于在何时失败和何时不失败之间进行条件转换。

正如您所做的那样,这是很好的。另一个可能更复杂的解决方案是使用遗嘱,但实际上不起作用?我知道在py中会有,但我找不到关于这个的文档。
和“…”不在var中
?如果没有你的
log.stdout
,这很难回答。我想我的测试环境失败了,我的代码正常工作了,你应该对此表示歉意。谢谢你的帮助。