Я новичок в ансибле и изучал зависимые роли. ссылка на документацию
Чего я не нашел в документации, так это того, где разместить файл requirements.yml
.
Например, если мой site.yml
выглядит так:
---
- name: prepare system
hosts: all
roles:
- role1
И, скажем так
- роль1 зависит от роли2 и роли3
- role2 зависит от role4 и role5
Обычно ансибл-галактики имеют следующую структуру:
└── test-role
├── defaults
│ └── main.yml
├── files
├── handlers
│ └── main.yml
├── meta
│ └── main.yml
├── README.md
├── tasks
│ └── main.yml
├── templates
├── tests
│ ├── inventory
│ └── test.yml
└── vars
└── main.yml
Зависимости добавляются в meta/main.yml
. Предположим, что у role1 есть зависимости, отмеченные в этом файле, например (и то же самое для role2):
dependencies:
- role: role2
- role: role3
И у меня также есть файл requirements.yml
, который выглядит так:
---
- src: some git link1
version: master
name: role2
- src: some git link2
version: master
name: role3
Мой вопрос: где мне разместить этот requirements.yml
файл для role1?
Я понимаю, что требования нужно будет установить командой,
ansible-galaxy install -r requirements.yml -p roles/
И я могу сделать это для роли 1, но как это автоматизировать для роли 2? Нужно ли таким образом вручную разрешать и устанавливать последовательные зависимости или есть что-то получше?