Я использую роль Ansible всухую. Часть роли заключается в развертывании большого шаблона конфигурации (в котором есть много переменных Ansible, которые заменяются в процессе развертывания) на удаленном компьютере. Пробный запуск сообщает мне, что файл удаленной конфигурации был изменен. Поскольку файл слишком велик, чтобы вручную переходить по строкам, как я могу отладить, какие части (строки) были изменены? Спасибо!
Шаблон развертывается следующим образом:
- name: "Make changes to the configuration file"
template:
src: "config.j2"
dest: "{{config_directory}}/config"
owner: "{{ service_user }}"
group: "{{ service_group }}"
mode: 0640
notify: restart service
Ты можешь использовать --check
для пробного прогона, если еще не используется и --diff
чтобы увидеть, что может измениться, когда --check
включен
Сначала выполните развертывание в своей тестовой системе. (Если у вас нет тестовой системы, это большая проблема.)
Разверните шаблон в какой-нибудь файл и используйте утилиту сравнения с оригиналом. Это можно сделать несколькими способами: создать новое имя файла с другим именем и diff config config.new
или используйте (временный) репозиторий с контролем версий и выполните git diff
.
Далее должен быть известен список ожидаемых изменений. Пройдите коммиты управления версиями вашего playbook и просмотрите изменения. Если вы получаете значения из других систем, это немного сложнее, но могут быть запросы, которые вы можете выполнить, чтобы получить старые и новые значения.