В чем разница между Build (сборкой) и Release (релизом) в CI/CD?

Ответ

Build (Сборка) — это технический процесс преобразования исходного кода в исполняемый артефакт.

  • Цель: Скомпилировать код, запустить модульные тесты и создать пакет (.jar, .exe, .dll, Docker-образ).
  • Контекст: Этап внутри конвейера CI (Continuous Integration).
  • Пример команды:
    # Создание билда Java-приложения
    mvn clean package
    # Создание Docker-образа
    docker build -t my-app:latest .

Release (Релиз) — это готовый к развертыванию продукт, включающий билд и все необходимые для эксплуатации компоненты.

  • Цель: Подготовить стабильную версию продукта для развертывания в целевое окружение (stage, production).
  • Контекст: Этап CD (Continuous Delivery/Deployment). Включает билд, конфигурации, скрипты миграции БД, документацию, notes и часто проходит дополнительные проверки (интеграционное, регрессионное тестирование).
  • Пример: Релиз v1.2.3 может включать:
    1. Артефакт сборки (app-v1.2.3.jar).
    2. Манифест развертывания (deployment.yaml).
    3. Чейнджлог.
    4. Скрипт обновления базы данных.

Проще: Build — это "сырой" артефакт, Release — это упакованный и проверенный продукт, готовый к отправке пользователю.