Skip to content

Основные концепции

Прежде чем строить первый пайплайн, полезно понять, как pipel8ne моделирует CI/CD воркфлоу.

Четыре уровня

Проект

Проект — логический контейнер, объединяющий связанные пайплайны. Как правило, один проект = один репозиторий или одно приложение.

У проектов есть параметр видимости:

  • Приватный — виден только вам
  • Публичный — виден всем пользователям инстанса

Пайплайн

Пайплайн — ориентированный граф стейджей. У него есть триггер (что его запускает) и статус:

  • Черновик — на стадии разработки; триггер необязателен; нельзя активировать
  • Активный — настроен триггер, готов к экспорту

Можно иметь несколько пайплайнов в проекте (например, один для CI, один для деплоя, один для ночных задач).

Стейдж

Стейдж — именованная группа джобов, выполняемых вместе. Стейджи соединяются рёбрами зависимостей, определяющими порядок выполнения.

[Сборка] ──► [Тесты] ──► [Деплой]

Все джобы внутри стейджа выполняются параллельно, если между ними нет рёбер.

Джоб

Джоб выполняется на конкретном раннере (например, ubuntu-latest, self-hosted). Он содержит список шагов, выполняемых последовательно.

При сбое джоба оставшиеся шаги пропускаются, и зависящие от него джобы также пропускаются.

Шаг

Шаг — наименьшая единица работы. Его тип определяет, что он делает и какие параметры принимает:

ТипЧто делает
shell_commandЗапускает скрипт оболочки
dockerСобирает, запускает, публикует или загружает Docker-образ
gitКлонирует, переключает, тянет, тегирует или пушит
testЗапускает набор тестов (Jest, Pytest, Vitest и др.)
buildСобирает артефакт (npm, Maven, Cargo и др.)
deployДеплоит в целевое окружение (Kubernetes, AWS, SSH и др.)
notificationОтправляет сообщение (Slack, Teams, email, Discord)

Холст

Визуальный редактор имеет три уровня холста. Переключение между ними происходит через детализацию:

УровеньЧто отображаетсяКак войти
Вид пайплайнаВсе стейджи + рёбра зависимостейПо умолчанию при открытии пайплайна
Вид стейджаВсе джобы в стейджеДвойной клик по карточке стейджа
Вид джобаВсе шаги в джобеДвойной клик по карточке джоба

Используйте хлебные крошки вверху для возврата на предыдущий уровень.

Триггеры

Триггер определяет, когда запускается пайплайн. pipel8ne поддерживает:

Тип триггераКогда срабатывает
pushПри пуше в указанные ветки
pull_requestПри открытии pull request в указанные ветки
scheduleПо расписанию cron
tagПри создании тега, совпадающего с шаблоном
manualТолько при ручном запуске

Триггер настраивается на уровне пайплайна, а не на уровне шага.

Экспорт YAML

Когда проектирование завершено, экспортируйте пайплайн в YAML-файл, совместимый с вашей CI/CD платформой. Экспорт генерируется на стороне клиента — ничего не покидает ваш браузер.

Поддерживаемые форматы: GitHub Actions, GitLab CI, Azure DevOps.

Смотрите Экспорт пайплайнов для подробностей.

Released under the MIT License.