Публикация собственной роли в Galaxy
Делитесь автоматизацией со всем миром
«Публикация собственной роли в Galaxy» — бесплатный урок Ansible Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ansible Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ansible Academy содержит 4 уроков всего.
Делитесь с сообществом
Если роль хорошо решает задачу, Вы можете поделиться ею. Публикация в Galaxy позволяет любому установить Вашу работу одной командой.
Galaxy получает данные из GitHub
Galaxy не хранит код у себя. Она импортирует роль напрямую из общедоступного репозитория GitHub, которым Вы владеете.
Один репозиторий — одна роль
Самая простая структура размещает одну роль в корне репозитория, используя стандартный каркас, созданный командой ansible-galaxy init.
ansible-galaxy init my_roleТребуется meta/main.yml
Galaxy считывает метаданные из meta/main.yml. До импорта укажите автора, понятное описание, лицензию и поддерживаемые платформы.
galaxy_info:
author: yourname
description: Configure nginx
license: MITНапишите содержательный README
Ваш README.md — это главная страница роли. Опишите её назначение и перечислите все принимаемые переменные с понятными примерами.
Подключите учётную запись GitHub
Войдите на galaxy.ansible.com с помощью GitHub. Это свяжет Вашу учётную запись с Galaxy, чтобы она могла видеть и импортировать Ваши репозитории.
Импортируйте репозиторий
На панели Galaxy выберите репозиторий и запустите импорт. Затем Galaxy считывает метаданные и публикует роль.
Импорт из CLI
Вы также можете импортировать роль без веб-сайта, используя токен API и подкоманду import, указав имя пользователя GitHub и репозитория.
ansible-galaxy role import yourname my_roleТеги становятся версиями
Galaxy превращает Ваши теги Git в версии роли. Отправьте тег вроде 1.0.0, чтобы пользователи могли закрепить конкретный стабильный выпуск.
git tag 1.0.0
git push --tagsИмя берётся из репозитория
Имя опубликованной роли — это github_user.repo_name; именно так другие пользователи будут указывать её в requirements.yml.
roles:
- name: yourname.my_roleПоддерживайте роль
Публикация — это обязательство. Отвечайте на сообщения о проблемах и отправляйте новые теги с исправлениями, чтобы сообщество продолжало доверять Вашей роли.
Быстрая проверка
Вспомните, откуда Galaxy получает публикуемый код.
Итоги
Создайте каркас роли, заполните meta/main.yml и README, отправьте изменения в GitHub, затем импортируйте роль в Galaxy. Теги Git становятся версиями, доступными для установки. 🚀
Часто задаваемые вопросы
Урок «Публикация собственной роли в Galaxy» бесплатный?
Да — полный текст урока «Публикация собственной роли в Galaxy» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ansible Academy, подпишись на CoddyKit PRO. Курс Ansible Academy содержит 4 уроков всего.
Чему я научусь в уроке «Публикация собственной роли в Galaxy»?
Делитесь автоматизацией со всем миром Ты практикуешь Ansible Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ansible Academy?
Предыдущий опыт не требуется. Ansible Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Публикация собственной роли в Galaxy»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ansible Academy?
Да. Каждый урок Ansible Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Роли и коллекции в Galaxy
- Установка ролей с requirements.yml
- Использование FQCN: namespace.collection.module
- Публикация собственной роли в Galaxy