Начиная с версии 1.3, Ansible поддерживает зависимые роли, чтобы поощрять повторное использование определений ролей. Чтобы проводить аудит и поддерживать более крупные оркестровки, было бы неплохо иметь некоторый способ легко создать граф зависимости, функции которого зависят от других ролей.Есть ли простой способ создания графика зависимых зависимостей роли?
Пример определения зависимостей может быть roles/app_node/meta/main.yml
:
---
dependencies:
- { role: common, some_parameter: 3 }
- { role: apache, port: 80 }
- { role: postgres_client,
dbname: blarg,
other_parameter: 12 }
где roles/postgres_client/meta/main.yml
может включать в себя что-то вроде
---
dependencies:
- { role: postgres_common }
- { role: stunnel,
client: yes,
local_port: 5432
remote_host: db_host
remote_port: 15432
}
Таких вложенных зависимостей могут запутаться поддерживать, когда количество ролей в оркестровке растет , Поэтому я задаюсь вопросом, нашел ли кто-нибудь простой способ генерировать график таких зависимостей, либо графически (точка или неато?), Либо просто как отступом текстового графика? Такой инструмент может помочь уменьшить сложность обслуживания.
Этот ответ может быть улучшена путем объяснения _how_ он решает проблему, сформулированную в вопросе. –
Запуск: «ImportError: нет модуля с именем gv». pip install gv: «Никаких распределений вообще не найдено для gv» –
@TravisBear Модуль 'gv' является частью Graphviz, он не распространяется на PyPI. Его можно установить с помощью диспетчера пакетов вашего дистрибутива Linux (apt, yum ...). Имя пакета может быть чем-то вроде 'graphviz-python' или' python-graphviz'. – sebn