Job и Pipeline
Job:
Job (задача) - это отдельная задача, которая выполняется в рамках процесса CI/CD. Она представляет собой единичный шаг или этап в цикле сборки, тестирования или развертывания. Каждый Job выполняет определенную функцию, такую как компиляция кода, запуск тестов, сборка Docker образа и т. д.
Примеры Job'ов:
Build Job: Компиляция и сборка приложения.
Test Job: Запуск автоматических тестов для проверки качества кода.
Deploy Job: Развертывание приложения на тестовом или продуктивном сервере.
Pipeline:
Pipeline - это набор связанных между собой Job'ов, представляющих собой последовательность этапов выполнения CI/CD процесса. Pipeline обеспечивает непрерывное выполнение шагов, начиная от сборки кода и заканчивая его развертыванием.
Примеры Pipeline'ов:
CI Pipeline: Включает этапы сборки и тестирования, чтобы проверить новый код.
CD Pipeline: Включает этапы сборки, тестирования и развертывания на тестовое или продуктивное окружение.
Характерные черты Pipeline:
Декларативность: Обычно описывается в виде кода (например, в виде файла конфигурации), который определяет порядок выполнения Job'ов.
Автоматизация: Задает автоматизированный процесс выполнения шагов CI/CD.
Взаимосвязь Job и Pipeline:
Pipeline объединяет Job'ы: Pipeline представляет собой согласованный набор Job'ов, которые следуют друг за другом, чтобы создать конвейер для автоматического выполнения CI/CD процесса.
Job выполняет конкретную задачу: Каждый Job внутри Pipeline представляет собой конкретную задачу или этап в цикле разработки.
Пример Pipeline в виде Jenkins Declarative Pipeline:
В данном примере Pipeline включает три этапа (Build, Test, Deploy), каждый из которых представлен Job'ом с соответствующими шагами.
Last updated