Skip to content

Стейджи и джобы

Стейджи

Стейджи — главные строительные блоки пайплайна. Они определяют что и когда запускается.

Добавление стейджа

В виде пайплайна кликните по холсту и выберите Добавить стейдж. Дайте ему понятное имя, отражающее назначение: Сборка, Тесты, Деплой, Уведомление.

Порядок выполнения стейджей

По умолчанию все стейджи в пайплайне выполняются независимо. Чтобы один стейдж ждал завершения другого, соедините их ребром:

  1. Наведите курсор на исходный стейдж, пока не появится маркер соединения
  2. Перетащите к целевому стейджу

Целевой стейдж не начнётся, пока исходный не завершится успешно.

Можно выстраивать цепочки:

Можно разветвляться (несколько стейджей параллельно после одного):

И сводить обратно (ждать несколько стейджей перед следующим):

Удаление стейджа

Выберите карточку стейджа и нажмите Delete, или правой кнопкой мыши выберите Удалить стейдж.

WARNING

Удаление стейджа удаляет все джобы и шаги внутри него. Это нельзя отменить без использования Undo (Ctrl+Z).


Джобы

Джобы — рабочие лошадки пайплайна. Каждый джоб выполняется на определённом раннере и содержит последовательность шагов.

Добавление джоба

Войдите в стейдж (двойной клик по карточке), затем нажмите Добавить джоб. Настройте:

ПолеОписаниеПример
НазваниеИдентификатор джобаrun-tests
Runs onМетка раннераubuntu-latest, self-hosted, macos-latest

Выполнение джобов внутри стейджа

По умолчанию все джобы внутри стейджа выполняются параллельно. Чтобы один джоб ждал другого, соедините их ребром в виде стейджа — так же, как соединяются стейджи.

Распространённые метки раннеров

МеткаПлатформаПрименение
ubuntu-latestGitHub ActionsБольшинство CI-задач
ubuntu-22.04GitHub ActionsФиксированная версия Ubuntu
windows-latestGitHub ActionsСборки под Windows
macos-latestGitHub ActionsСборки iOS/macOS
self-hostedВсе платформыВаши собственные машины

TIP

Метки раннеров передаются напрямую в экспортируемый YAML. Используйте любую метку, которую поддерживает ваша CI-платформа.

Поведение при сбое джоба

При сбое джоба:

  • Оставшиеся шаги пропускаются
  • Зависящие от него джобы (через рёбра) также пропускаются
  • Не зависящие от него джобы продолжают работу в обычном режиме
  • Стейдж помечается как провалившийся
  • Нижестоящие стейджи, зависящие от этого стейджа, пропускаются

Released under the MIT License.