molecule init и структура сценария
Создайте каркас тестового окружения для роли
«molecule init и структура сценария» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Создайте каркас тестового окружения
Команда molecule init создаёт готовую к запуску конфигурацию тестирования, поэтому вам не придётся вручную писать шаблонный код.
Инициализация внутри роли
Запустите init из корневого каталога роли, чтобы добавить сценарий, не изменяя существующие задачи и обработчики.
molecule init scenarioЧто такое сценарий
Сценарий — это полная конфигурация теста: какой хост создать, как запустить роль и как проверить результат.
Сценарий default
Init создаёт в каталоге molecule/ папку с именем default. Это сценарий, который запускается, если не указать другой.
molecule/
default/molecule.yml: главный файл
Файл molecule.yml связывает драйвер, платформы, средство подготовки и средство проверки для этого сценария.
molecule/default/molecule.ymlВыберите драйвер и платформу
Блок платформ содержит список тестовых хостов. С драйвером Docker достаточно указать базовый образ для запуска.
platforms:
- name: instance
image: ubuntu:22.04converge.yml применяет вашу роль
Плейбук converge.yml фактически запускает вашу роль на тестовом хосте во время теста.
- hosts: all
roles:
- role: my_roleverify.yml проверяет результат
Плейбук verify.yml содержит ваши утверждения: он подтверждает, что роль оставила хост в ожидаемом состоянии.
molecule/default/verify.ymlНесколько сценариев
Рядом с default можно добавить другие именованные сценарии, например чтобы проверить ту же роль на образе второй OS.
molecule init scenario centosВыберите один сценарий
Используйте флаг -s, чтобы запустить определённый сценарий по имени вместо сценария по умолчанию.
molecule test -s centosЗафиксируйте сценарий
Весь каталог molecule/ состоит из обычного текста. Зафиксируйте его в Git, чтобы каждый участник команды запускал абсолютно одинаковую конфигурацию тестирования.
Быстрая проверка
Вспомните, какой файл настраивает сценарий Molecule.
Итоги
molecule init scenario создаёт каркас сценария по умолчанию: molecule.yml настраивает его, converge.yml применяет роль, а verify.yml проверяет результат. 🗂️
Часто задаваемые вопросы
Урок «molecule init и структура сценария» бесплатный?
Да — полный текст урока «molecule init и структура сценария» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «molecule init и структура сценария»?
Создайте каркас тестового окружения для роли Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «molecule init и структура сценария»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем тестировать код инфраструктуры
- molecule init и структура сценария
- Сведение, проверка и матрица тестов
- Идемпотентность и линтинг в конвейере