ansible-galaxy install

Тема дорожной карты · Ansible

ansible-galaxy install — это CLI-команда для загрузки и установки role и collection из Ansible Galaxy, Red Hat Automation Hub или приватных automation hub непосредственно в локальный проект Ansible или общий путь содержимого пользователя. Эта команда позволяет автоматизировать процесс управления и установки ролей и коллекций, что значительно упрощает процесс настройки и управления проектами. Для role команда ansible-galaxy install geerlingguy.nginx устанавливает role в ~/.ansible/roles/ по умолчанию, тогда как ansible-galaxy collection install community.general устанавливает collection в ~/.ansible/collections/. В проектном контексте ansible-galaxy install -r requirements.yml читает декларативный манифест со списком всех необходимых role и collection с зафиксированными ограничениями версий и устанавливает их все за один шаг, обеспечивая воспроизводимость настройки среды на рабочих станциях разработчиков и в CI-раннерах. Флаг --force обновляет уже установленное содержимое до указанной версии, а флаг -p переопределяет путь установки для изоляции зависимостей уровня проекта.

Как это работает

ansible-galaxy install — это инструмент для управления и установки ролей и коллекций Ansible. Роли и коллекции — это модули, плагины и скрипты, используемые для автоматизации различных задач. Collections (namespace.name) пакетируют роли, модули, плагины, документацию и другие ресурсы в единый пакет, что делает их удобными для использования и распространения. Установка ansible-galaxy collection install community.general или через requirements.yml позволяет быстро и легко интегрировать эти коллекции в проекты Ansible. Приватный контент — в Automation Hub (Red Hat), приватном Galaxy-сервере или git-репо через requirements.yml.

Когда применять

ansible-galaxy install следует использовать для управления и установки ролей и коллекций в проектах Ansible. Всегда используйте requirements.yml с запинненными версиями — ansible-galaxy install -r requirements.yml обеспечивает воспроизводимость настройки среды на рабочих станциях разработчиков и в CI-раннерах. Collections (современный способ) лучше standalone-ролей для нового контента; многие "роли" теперь внутри community.general, ansible.posix и т.д. Аудитуйте скачанные collections в CI — supply chain важен и здесь.

Типичные ошибки

Типичные ошибки при использовании ansible-galaxy install включают установку ролей без указания версии (ansible-galaxy install user.role), что может привести к проблемам при обновлении. Также важно проверять активность мейнтейнеров, чтобы избежать использования заброшенных ролей. Не стоит использовать community.general там, где есть ansible.builtin (debug, set_fact, copy встроены), так как это может привести к ненужным зависимостям и усложнить управление проектом.

Связанные понятия

Полезные ресурсы