我有以下Ansible Playbook:
- hosts: webservers
roles:
- start_measurement_script
- run_calculations
- stop_measurement_script
- gather_logs
即使run_calculations
失败,我也想执行角色stop_measurement_script
。但是,gather_logs
角色不应执行。角色stop_measurement_script
仅包含一个任务。有什么方法可以实现这一目标?
我使用的是Ansible 1.9.4,因此我无法使用Ansible 2.0的blocks
功能。我已经看过always_run
子句,但似乎它的名称具有误导性,并且在不同的情况下使用。
您可以将ignore_errors: True
添加到您的步骤中。
您还可以添加一个步骤以在步骤之后提供真正的故障。
在https://docs.ansible.com/ansible/playbooks_error_handling.html#controlling-what what what what-defines-failure