Назад | Перейти на главную страницу

Ansible - отладка модификаций файла шаблона

Я использую роль 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 и просмотрите изменения. Если вы получаете значения из других систем, это немного сложнее, но могут быть запросы, которые вы можете выполнить, чтобы получить старые и новые значения.