Введение в GitHub Actions
CI/CD для машинного обучения
Ravi Bhadauria
Machine Learning Engineer
Что такое GitHub Actions?
GitHub Actions (GHA)
: CI/CD-платформа для автоматизации
пайплайнов
Пайплайн
: последовательность шагов, описывающих поток работы и данных
Что такое GitHub Actions?
Что такое GitHub Actions?
1
https://medium.com/empathyco/applying-ci-cd-using-github-actions-for-android-1231e40cc52f
Компоненты GHA: событие
Событие (Event)
: определённое действие в репозитории, запускающее выполнение воркфлоу
Push
Pull Request
Открытие issue
Компоненты GHA: воркфлоу
Воркфлоу (Workflow)
: автоматизированный процесс, запускающий одно или несколько заданий
Описывается в YAML-файлах
Запускается автоматически
событием
Возможен ручной запуск
Хранится в директории
.github/workflows
репозитория
Можно определить несколько воркфлоу
Компоненты GHA: шаги и действия
Шаги (Steps)
: отдельные единицы работы
Выполняются по порядку, каждый зависит от предыдущего
Запускаются на одной машине, поэтому данные можно передавать между шагами
Примеры единиц работы
Скомпилированное приложение, shell-скрипт
Action
: приложение, специфичное для платформы GHA
Например: клонирование репозитория, комментарий к PR
Компоненты GHA: задания и раннеры
Задание (Job)
: набор
шагов
Каждое задание независимо
Возможно параллельное выполнение
Выполняется на вычислительной машине —
раннере (runner)
Простой воркфлоу GHA
Событие
: Push
Задание
: выполняется на
раннере
Ubuntu
, содержит два
шага
Action
: клонирование репозитория
Запуск кода Python
Всё вместе
Давайте потренируемся!
CI/CD для машинного обучения
Preparing Video For Download...