首页 » 翻译 » Ansible » 正文

ansible-playbook failed_when 和changed_when

ansible-playbook 有个一个failed_when,这个是什么时候会用到呢?

先看一个例子:

这个例子中,command 命令明显就会返回一个false , 这个时候ansible-playbook就知道这个task failed,但是,有些时候,我们是需要通过返回的字符串来判断是否failed, 例如:

也就是说,我们只有在返回结果中出现字符串‘FAILED’,我们才认为我们的task 失败了(因为command 命令即使执行成功,返回值才是我们要判断失败与否的关键)

类似的有changed_when

在使用command /shell 模块的时候ansible playbook 会按照自己的判断来决定是否changed了,有时候我们仅仅是ls 了一下, ansible-playbook 也会认为是changed了,可能这并不是我们想要的,这个时候我们就要用例子中方法来修改task的状态了

 

 

发表评论