Создание каркаса роли с ansible-galaxy init
Сгенерируйте стандартный каркас роли
«Создание каркаса роли с ansible-galaxy init» — бесплатный урок Ansible Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ansible Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ansible Academy содержит 4 уроков всего.
Не создавайте её вручную
Вы могли бы создать все папки роли вручную, но Ansible предоставляет команду, которая за один шаг создаёт всю структуру.
ansible-galaxy init
Команда ansible-galaxy init создаёт полный каркас роли, готовый к заполнению, со всеми стандартными каталогами.
ansible-galaxy init nginxДайте роли понятное имя
Переданный Вами аргумент становится именем папки роли. Выберите описательное имя, например webserver или postgres, чтобы назначение роли было очевидно.
Что создаётся
Команда создаёт папки tasks, handlers, templates, files, vars, defaults, meta и tests, в каждой из которых находится начальный файл main.yml, готовый к редактированию.
nginx/
tasks/main.yml
handlers/main.yml
defaults/main.yml
meta/main.ymlЗапускайте внутри roles/
Запускайте команду из каталога roles Вашего проекта, чтобы новая роль оказалась там, где плейбуки ожидают её найти.
cd roles
ansible-galaxy init webserverНачальные файлы — пустые заготовки
Каждый созданный файл main.yml почти пуст и содержит только заголовок-комментарий. Настоящие задачи и переменные Вы добавляете самостоятельно.
meta заполняется заранее
Заготовка meta/main.yml содержит поля для автора, лицензии и платформ. Обновите их, прежде чем делиться ролью.
README включён в комплект
Каркас также содержит шаблон README.md, предлагая Вам описать назначение роли и принимаемые ею переменные.
Используйте пользовательский путь
Передайте --init-path, чтобы создать роль не в текущей папке, а в другом месте. Это удобно, когда роли хранятся в отдельном каталоге.
ansible-galaxy init nginx --init-path roles/Единообразие в команде
Поскольку все создают каркас одной и той же командой, каждая роль в проекте имеет одинаковую предсказуемую структуру.
Затем начинайте писать задачи
Когда каркас готов, следующим шагом станет редактирование tasks/main.yml, где Вы определите, что именно устанавливает или настраивает роль.
Быстрая проверка
Вспомните команду, которая создаёт каркас новой роли.
Итоги
Запустите ansible-galaxy init, чтобы мгновенно создать полный каркас роли, а затем заполните файлы-заготовки настоящими задачами и переменными. 🛠️
Часто задаваемые вопросы
Урок «Создание каркаса роли с ansible-galaxy init» бесплатный?
Да — полный текст урока «Создание каркаса роли с ansible-galaxy init» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ansible Academy, подпишись на CoddyKit PRO. Курс Ansible Academy содержит 4 уроков всего.
Чему я научусь в уроке «Создание каркаса роли с ansible-galaxy init»?
Сгенерируйте стандартный каркас роли Ты практикуешь Ansible Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ansible Academy?
Предыдущий опыт не требуется. Ansible Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Создание каркаса роли с ansible-galaxy init»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ansible Academy?
Да. Каждый урок Ansible Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем нужны роли: от монолита к модулям
- Анатомия каталога роли
- Создание каркаса роли с ansible-galaxy init
- Применение ролей и передача переменных роли