когда:
оценка как false приводит к пропущенному статусу этой задачи. Печать чего-либо при пропуске происходит из стандартного плагина обратного вызова. Для обратных вызовов по умолчанию это можно отключить глобально с помощью display_skiped_hosts
элемент конфигурации. См. документы: ansible-doc -t обратный вызов по умолчанию
Элегантным решением может быть обернуть эту вещь в настоящий менеджер пакетов и установить его. Для Ansible существует несколько идемпотентных модулей менеджера пакетов.
Или сценарий установки можно сделать безопасным для повторного запуска, и он возвращается с нулевым кодом в случае успеха.
Хотя я не говорю за разработчиков, они осторожно относятся к добавлению функций в ядро. И, возможно, они не видят проблемы с задачей, о которой сообщают, что она пропущена, не каждая задача каждой игры выполняется.
когда:
контролирует выполнение задачи. изменено_когда:
и не удалось_когда:
изменить статус задачи после ее запуска, например, на основе кода возврата или стандартного вывода. Вместе они дают контроль над тем, находится ли задача в статусе измененной или неудачной, даже для универсальных командных задач.
Для большего контроля над идемпотентностью используйте менее универсальный модуль. И если вас все еще оскорбляет то, что напечатано, рассмотрите собственный плагин обратного вызова.