Редагувати: якщо у вас Ansible 2.2 або вище, використовуйте відповідь mkadan. Відповідь нижче не працює з новішими версіями Ansible. Також зверніть увагу, що згідно з коментарем Еніса Афгана нижче, через помилку ця відповідь не працює з версіями Ansible між 2.0.2 і 2.1.2.
Починаючи з Ansible 2.0, ви можете використовувати дію включення у своєму обробнику для запуску декількох завдань.
Наприклад, розмістіть свої завдання в окремому файлі restart_tasks.yml
(якщо ви використовуєте ролі, це буде переходити до підкаталогу завдань, а не до підкаталогу обробників):
- name: Restart conditionally step 1
shell: check_is_started.sh
register: result
- name: Restart conditionally step 2
service: name=service state=restarted
when: result
Тоді ваш обробник просто буде:
- name: Restart conditionally
include: restart_tasks.yml
Джерело: нитка випуску на github: https://github.com/ansible/ansible/issues/14270