Установка ролей с requirements.yml
Зафиксируйте версии и загрузите зависимости
«Установка ролей с requirements.yml» — бесплатный урок Ansible Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ansible Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ansible Academy содержит 4 уроков всего.
Перестаньте устанавливать вручную
Последовательный запуск команд установки не масштабируется. Файл requirements.yml перечисляет все зависимости, поэтому весь проект устанавливается одной командой.
Манифест зависимостей
Считайте requirements.yml манифестом пакетов: он точно объявляет, какие роли и коллекции нужны Вашим плейбукам для работы.
Перечисляйте роли в разделе roles
Внутри файла ключ roles содержит список. Каждая запись указывает одну роль, которую нужно получить из Galaxy по идентификатору author.name.
roles:
- name: geerlingguy.nginxПеречисляйте также коллекции
Отдельный ключ collections перечисляет коллекции по имени namespace.collection, поэтому один файл охватывает оба типа содержимого.
collections:
- name: community.generalЗакрепляйте версию
Всегда указывайте версию, чтобы установки были воспроизводимыми. Без неё на компьютере коллеги может загрузиться более новый выпуск с нарушающими совместимость изменениями.
roles:
- name: geerlingguy.nginx
version: "3.1.4"Устанавливайте всё сразу
Укажите файл для ansible-galaxy с помощью -r, и команда разрешит и установит все перечисленные зависимости за один запуск.
ansible-galaxy install -r requirements.ymlДля коллекций нужен отдельный запуск
Обычная команда установки обрабатывает роли. Для коллекций используйте подкоманду collection install с тем же флагом -r.
ansible-galaxy collection install -r requirements.ymlЗагружайте из Git, а не только из Galaxy
В записи роли можно указать URL Git в src вместо имени в Galaxy, что позволяет устанавливать частные или неопубликованные роли.
roles:
- src: https://github.com/acme/role-app.git
version: mainВыбирайте путь установки
Добавьте -p, чтобы поместить роли в локальную папку проекта, например roles/, вместо глобального пути и сохранить каждый проект самодостаточным.
ansible-galaxy install -r requirements.yml -p roles/Принудительное обновление
По умолчанию существующие роли сохраняются. Передайте --force, чтобы повторно загрузить и перезаписать их при обновлении закреплённой версии.
ansible-galaxy install -r requirements.yml --forceФиксируйте файл, а не роли
Добавьте requirements.yml в Git, но исключите загруженные папки ролей из отслеживания. Любой сможет восстановить точно такой же набор по манифесту.
Быстрая проверка
Вспомните, как установить всё, от чего зависит проект.
Итоги
Перечислите роли и коллекции в requirements.yml, закрепите версии, а затем установите их все с помощью ansible-galaxy -r. Один файл — воспроизводимые настройки. 📦
Часто задаваемые вопросы
Урок «Установка ролей с requirements.yml» бесплатный?
Да — полный текст урока «Установка ролей с requirements.yml» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ansible Academy, подпишись на CoddyKit PRO. Курс Ansible Academy содержит 4 уроков всего.
Чему я научусь в уроке «Установка ролей с requirements.yml»?
Зафиксируйте версии и загрузите зависимости Ты практикуешь Ansible Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ansible Academy?
Предыдущий опыт не требуется. Ansible Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Установка ролей с requirements.yml»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ansible Academy?
Да. Каждый урок Ansible Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Роли и коллекции в Galaxy
- Установка ролей с requirements.yml
- Использование FQCN: namespace.collection.module
- Публикация собственной роли в Galaxy