Что такое CI/CD

«Что такое CI/CD» — вопрос из категории Методологии разработки, который задают на 32% собеседований Менеджер Проектов. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

CI/CD — это практика автоматизации процессов интеграции, доставки и развертывания кода.

CI (Continuous Integration) — автоматическая сборка и тестирование кода при каждом коммите. Позволяет быстро находить ошибки.

CD (Continuous Delivery/Deployment) — автоматическая доставка кода в тестовую/продакшен-среду после успешного CI.

Пример конфигурации .gitlab-ci.yml:

stages:  
  - build  
  - test  
  - deploy  

build_job:  
  stage: build  
  script:  
    - npm install  
    - npm run build  

test_job:  
  stage: test  
  script:  
    - npm test  

deploy_job:  
  stage: deploy  
  script:  
    - scp -r ./dist user@server:/app  
  only:  
    - main  

Преимущества:

  • Ускорение релизов
  • Снижение риска ошибок
  • Повышение стабильности продукта

Видео-ответы