在Ansible中,可以通过设置any_errors_fatal
参数为false
来实现任务失败时继续执行的功能。下面是一个设置的示例代码:
- hosts: all
tasks:
- name: Task 1
debug:
msg: "Executing Task 1"
- name: Task 2
debug:
msg: "Executing Task 2"
failed_when: true # 设置任务失败条件
- name: Task 3
debug:
msg: "Executing Task 3"
any_errors_fatal: false # 设置任务失败时继续执行
在上面的示例中,任务2被设置为必须失败(通过failed_when: true
),这意味着它将始终失败。但由于any_errors_fatal
参数被设置为false
,任务2的失败不会导致整个Playbook的中止。相反,Ansible将继续执行任务3。
请注意,any_errors_fatal
参数是作为Playbook级别的参数设置的,而不是在每个任务级别设置的。这意味着该参数将影响Playbook中的所有任务。如果需要在特定任务中实现任务失败时继续执行的功能,可以考虑使用ignore_errors
参数来实现。