Какой командой проверить, что будет выполнять Ansible Playbook без его фактического запуска?

«Какой командой проверить, что будет выполнять Ansible Playbook без его фактического запуска?» — вопрос из категории Ansible, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для симуляции выполнения (dry-run) Ansible Playbook используется флаг --check. Эта команда покажет, какие изменения были бы внесены, но не применит их.

Основная команда:

ansible-playbook playbook.yml --check

Полезные комбинации флагов:

  • --check --diff: Покажет не только список задач, но и конкретные различия в изменяемых файлах.
  • --check -v (или -vv, -vvv): Увеличит уровень детализации вывода для отладки.

Важное ограничение: Не все модули Ansible поддерживают режим проверки (check mode). Модули, выполняющие произвольные команды (например, shell, command), обычно в этом режиме не выполняются. В таких случаях я анализирую вывод --diff и логику условных операторов (when) в плейбуке, чтобы понять потенциальный эффект.