Опубликовано: 04.08.2026

Что такое CI/CD?

Технологии

Введение в непрерывную интеграцию/развертывание (CI/CD)

Почему автоматизация стала стандартом разработки

Скорость выпуска ПО и обновлений становится конкурентным преимуществом компаний. Раньше процесс доставки новой версии ПО занимал недели или месяцы. При этом сохранялся риск ошибок, возникали простои, а пользователь редко получал обновления. Методология CI/CD позволяет выстроить процессы написания кода, тестирования, доставки и развёртывания в автоматизированный конвейер, а значит, ускорить доставку ПО.

image3.png
К каким проблемам приводит отсутствие автоматизации CI/CD
image5.jpg
«Проблема управления конфигурациями и параметрами среды»
image4.png
«Проблема управления зависимостями и компонентами на сложных проектах»

Роль CI/CD в DevOps-подходе

Код, который пишут разработчики (Dev, от анг. development), не существует отдельно, а запускается в определённом окружении на оборудовании: физических или виртуальных машинах, которые нужно администрировать и конфигурировать (Ops, от англ. operations). DevOps-инженер — связующее звено между кодом и инфраструктурой: он обеспечивает гарантию доставки кода в продакшен (рабочую среду), отвечает за параметры развёртывания, управляет ИТ-инфраструктурой.

image8.jpg
«Роль DevOps-инженера в CI/CD-процессах»

CI/CD — основа методологии DevOps, которая автоматизирует процессы:

  • сборки;
  • тестирования;
  • настройки;
  • развёртывания ПО.

Благодаря настроенным CI/CD-процессам разработчику достаточно изменить строку кода, а программа сама запустится, протестируется и отправится в промышленную эксплуатацию.

CI (Continuous Integration) — непрерывная интеграция

CI (Continuous Integration) подразумевает  непрерывную интеграцию изменений кода каждого разработчика с общей веткой. Программист вносит изменения в основную ветку системы контроля версий (например, Git или GitVerse), а код проходит автоматические тесты для проверки, не сломался ли проект после изменений. Для этого подключают исполнители тестов (тест-раннеры), которые запускают автопроверки, например, при объединении веток или перед объединением в момент создания запроса на объединение.

Практика небольших фиксов (small commits) и разработки на основе главной ветки (trunk-based development)

Подход «маленькие фиксы» (микрокоммиты, small commits) — это метод, при котором изменения вносятся небольшими логическими порциями. Вместо одного большого изменения «Добавил страницу профиля» появляются 3–4 мелких: «добавил код HTML», «подключил стили CSS», «настроил JS-скрипты». Практика обеспечивает быстрый откат изменений и возможность отладки. 

Разработка на основе главной ветки (trunk-based development, TBD) — подход к управлению версиями, при котором разработчики минимум один раз в день сливают изменения в главную ветку: trunk (master, main). Это позволяет избежать сложных конфликтов слияния (merge hell) и уменьшить количество долгоживущих веток. Чем дольше существует ветка, тем сложнее в будущем актуализировать её состояние и решать конфликты слияния. Чем быстрее изменения будут добавлены в основную ветку, тем быстрее код пойдёт в релиз. 

CD (Continuous Delivery и Continuous Deployment) — непрерывная доставка и развёртывание

Continuous Delivery (CDelivery) — это непрерывная доставка артефакта, собранного в процессе непрерывной интеграции CI, на стенды приложения. Continuous Deployment (CDeployment) — это его непрерывное развёртывание (деплой).

Разница между Continuous Delivery и Continuous Deployment

Непрерывная доставка подразумевает автоматическую подготовку к релизу. Но доставка в производственную среду осуществляется вручную: буквально после нажатия на кнопку. ИТ-инженер собирает артефакт и выставляет конкретную версию, которая будет доставлена на стенд.

При непрерывном развёртывании любое изменение, прошедшее тесты, автоматически доставляется пользователю. Раскатка происходит после объединения с основной веткой.  Доставка вручную  не требуется.

Как работает конвейер CI/CD (пайплайн)

CI/CD подразумевает этапы, идущие друг за другом:

  • сборка;
  • тестирование;
  • развёртывание.

Они выстраиваются в цепочку автоматизированных процессов — CI/CD-конвейер (пайплайн, pipeline). Специфика шагов в нём зависит от принятых на проекте практик: например, можно добавить проверку безопасности для защиты от утечек или вредоносного кода.

Этапы конвейера (пайплайна): сборка (build) → тестирование (test) → проверка безопасности (security) → развёртывание (deploy)

Основные стадии релизного конвейера с инструментами представлены в таблице:

ЭтапИнструменты для разработчиков и команды на проекте
Триггер для запуска (автоматически или вручную)Механизмы опросов (poll) в Jenkins или отправка механизма перехвата (хука) от Git WebHooks
Проверка кодаСтатический анализ, Platform V Works::CodeScanner, SonarQube, JetBrains, Codacy
Компиляция/сборка (build)Maven, Gradle, Node JS. Частая практика — упаковка в Docker-образ
ТестированиеГенерация тестовых данных (Platform V Works::Test Data Management, IBM InfoSphere Optim, Delphix), нагрузочное тестирование (тесты Platform V Works::Overload, Apache JMeter, MicroFocus, LoadRunner)
Сканирование безопасностиTrivy, Platform V Works::CodeScanner, OWASP Dependency-Check, SonarQube, Clair, Falco, Docker scan, JetBrains, Codacy
Упаковка в итоговую сборкуDocker-образ, deb-пакет, бинарный файл сборки, архив
Приёмочное тестирование, тесты на средах разработкиГенерация тестовых данных (Platform V Works::Test Data Management, IBM InfoSphere Optim, Delphix), нагрузочное тестирование (тесты Platform V Works::Overload, Apache JMeter, MicroFocus, LoadRunner), поиск ошибок и уязвимостей
Доставка и развёртывание в промышленной средеПлатформы автоматического развёртывания Docker, Kubernetes, ArgoCD и Helm для управления развёртыванием

Роль репозитория кода (GitVerse, Git)

Репозиторий кода — центральный элемент системы автоматизации. Его роли:

  • триггер автоматизации CI/CD;
  • хранилище конфигурационных файлов и инструкций;
  • управление ветками (Git Flow);
  • откат изменений (Rollback).

Автоматизация инфраструктуры (IaC)

Автоматизация инфраструктуры (IaC — Infrastructure as Code) — это подход к управлению ИТ-инфраструктурой через описание конфигураций в машиночитаемых файлах, а не через ручную настройку. Инструменты для быстрого и повторяемого развёртывания сред:

  • Terraform;
  • Pulumi;
  • Ansible;
  • CloudFormation.

Для автоматизации развёртывания приложений и оркестрации задач в ОС Platform V SberLinux OS предусмотрен инструмент Ansible Core.

Интеграция с контейнерами и Kubernetes

Конвейеры CI/CD обеспечивают автоматическую сборку, тестирование и развёртывание контейнеров в кластере.

Основные преимущества CI/CD

Плюсы автоматизации:

  • ускорение поиска ошибок в коде, внесение изменений по результатам тестов;
  • уменьшение ручных изменений и человеческого фактора;
  • ускорение разработки и релизов;
  • прозрачность и контроль этапов проекта.

Типичные ошибки при внедрении CI/CD

Переход к CI/CD — это трансформация, требующая временных и ресурсных затрат. Основные проблемы, с которыми могут столкнуться команды разработчиков:

  • риски безопасности из-за неправильной настройки прав доступа;
  • отсутствие автоматизированного тестирования (или минимум автотестов);
  • хрупкость и медленность конвейеров, их падение;
  • отсутствие стратегии отката изменений.

Минимизировать риск ошибок помогают специальные инструменты и платформы: например, Platform V Works::Orchestra R для сложных CI/CD-конвейеров или Platform V IDM для централизованного управления учётными записями.

Инструменты для построения CI/CD

Портфель «Инструменты разработки» — платформенное решение СберТеха, позволяющее построить технологически независимый сквозной производственный процесс. Командам разработки доступны ИТ-продукты для создания CI/CD-конвейеров, управления репозиториями и контейнерами Docker, тестирования ПО и иные.

image6.jpg
«Экосистема ИТ-решений СберТеха для построения независимого сквозного производственного процесса»

Системы CI (Jenkins, GitLab CI, TeamCity)

Инструменты непрерывной интеграции, которые используются для автоматизации сборки и тестирования:

  • Jenkins; 
  • GitLab CI/CD; 
  • CircleCI; 
  • TeamCity; 
  • Travis CI; 
  • Bamboo; 
  • Azure DevOps и иные.

Platform V Works Orchestra R — это, по сути, визуальный редактор конвейеров CI/CD, который позволяет обеспечить их создание и запуск. ИТ-решение СберТеха поддерживает интеграцию с инструментами CI/CD (Jenkins, Argo, Nexus, Git и иными).

image7.jpg
«Как выглядит визуальный low-code-редактор конвейера в Platform V Works::Orchestra R»

За выполнение конечных операций отвечает Platform V Works Pipeliner. Это агент, который запускает скрипты сборки и развёртывания, вызова внешних приложений. ИТ-решение на базе Jenkins помогает автоматизировать процесс сборки и тестирования ПО.

Релизные и нерелизные сборки нужно где-то хранить и откуда-то скачивать. Для централизованного управления репозиториями дистрибутивов и Docker-контейнеров используют Platform V Works Artifactory. Для размещения git-репозиториев, версионного хранения кода и конфигураций создан ИТ-инструмент Platform V Works Source Control.

Контейнеризация (Docker)

Docker использует идею контейнеров. ИТ-инструмент позволяет упаковать приложение со всеми зависимостями в единую воспроизводимую изолированную среду — Docker container — для сборки, тестирования и доставки приложений. По мере усложнения ИТ-инфраструктуры контейнеры объединяют в кластеры.

Оркестровка (Kubernetes)

Чтобы управлять кластерами Kubernetes, OpenShift нужны инструменты: например, Platform V DropApp. Они автоматизируют сборку, тестирование и доставку приложений через встроенные конвейеры. Командам разработчиков доступен готовый стек на базе Argo CD для быстрого развёртывания ПО.

image2.jpg
«Platform V DropApp поддерживает CI/CD-оркестрацию и различные стратегии развёртывания»

Инструменты управления инфраструктурой (Terraform, Ansible)

Чем сложнее инфраструктура предприятия, тем больше задач, связанных с созданием, конфигурированием, настройкой виртуальных машин. Возникает вопрос, как автоматизировать работу и уменьшить количество настроек вручную. Так появился подход «инфраструктура как код» (IaC, Infrastructure as Code). Он подразумевает, что серверы, сети, базы данных настраиваются с помощью текстовых файлов с кодом, а не вручную. Благодаря автоматизации можно создать новый сервер или точную копию рабочей среды буквально за несколько минут. Для быстрой настройки инфраструктуры проекта используют инструменты вроде Terraform и Ansible.

image1.jpg
«Инструменты управления инфраструктурой (Terraform, Ansible)»

CI/CD и безопасность (DevSecOps)

Методология DevSecOps подразумевает встраивание проверок безопасности на всех этапах конвейера. Это нужно, чтобы:

  • снизить риск утечек; 
  • предотвратить ошибки конфигурации; 
  • минимизировать уязвимости.

Встраивание механизмов SAST, DAST и SCA в конвейер (пайплайн)

Для повышения безопасности на проектах внедряют следующие решения:

  • статический анализ кода (SAST); 
  • динамический анализ кода (DAST); 
  • сканирование зависимостей (SCA) и другие.

Построить безопасный конвейер разработки помогают специальные платформы: например, Platform V ASOC Control Center. Для статического анализа (контроль стандартов кода на проекте, уязвимости OWASP, CWE/SANS и др.) разработан Platform V Works::CodeScanner.

Метрики эффективности CI/CD

Оценить эффективность процессов непрерывной доставки и развёртывания на проекте помогают метрики CI/CD. По данным DORA (DevOps Research and Assessment), команды разработчиков используют следующие показатели:

  • частоту развёртываний (Deployment Frequency, DF); 
  • время от фикса (коммита) до развёртывания (Lead Time, LT); 
  • частоту сбоев после развёртывания (Change Failure Rate, CFR); 
  • среднее время восстановления (Failed deployment recovery time, FDRT); 
  • частоту переделок при развёртывании (Deployment rework rate, DRR).

Известны и другие, с которыми работают команды аналитиков, инженеров по тестированию, разработчиков: время сборки (Build Time), частота сбоев сборки (Build Failure Rate).

Итоги и ключевые выводы

Автоматизация конвейера CI/CD позволяет командам быстро доставлять обновления и минимизировать риск ошибок на проекте.

Решения для проектов на импортонезависимом стеке — Platform V DropApp (автоматизация сборки, тестирования и доставки), Platform V Synapse Service Mesh (упрощение канареечных релизов), Platform V SberLinux OS Server (стабильная среда для DevOps-инструментов). Для эффективной ИТ-разработки полного цикла создана платформа Platform V Works.

Присоединяйтесь к нашим сообществам

  • Код СберТеха — MАХ | ВКонтакте | Телеграм
    Канал о том, как создаются и работают современные технологии на практике. Здесь вы найдете обзоры российских ИТ-решений, реальные кейсы внедрения ИИ и цифровых продуктов, закулисье разработки и интервью с создателями технологий. Подписывайтесь, чтобы принимать решения на основе реального опыта!
  • AI Inside — MАХ | ВКонтакте | Телеграм
    Канал о практическом применении искусственного интеллекта для вашего бизнеса. Эксперты СберТеха разбирают тренды, кейсы, технологии и инструменты, которые реально работают. Получайте готовые решения для повышения эффективности. Присоединяйтесь, чтобы использовать ИИ с максимальной отдачей уже сегодня!
  • СУБД Pangolin — MАХ | ВКонтакте | Телеграм
    В сообществе рассказываем, как создаем СУБД Pangolin и сопутствующие инструменты. Делимся новостями, статьями и анонсами из мира СУБД, проводим технические квизы, обсуждаем разработку и отвечаем на вопросы участников.