어플리케이션 개발 단계부터 배포 때까지 모든 단계들을 자동화를 통해 더 효율적이고 빠르게 사용자에게 빈번이 배포할 수 있도록 만드는 것
CI - Continuous Integration - 지속적인 통합
CD - Continuous Delivery - 지속적인 제공 or Continous Deployment - 지속적인 배포
CI
코드 변경사항을 주기적으로 빈번하게 머지해야 한다.
통합을 위한 단계 (빌드, 테스트, 머지)의 자동화
CD
CI에서 자동으로 빌드, 테스트 한 후 배포를 준비 단계에서 수동으로 검수하고 배포하는 과정 (Continous Delivery)
이 과정에서 자동으로 배포하도록 하는 것을 Continous Deployment 라고 한다.
개발자가 작은 단위로 기능을 나누어 주기적으로 메인 레퍼지토리에 머지를 하면 자동으로 빌드를 하고 테스트 과정을 거쳐서 배포 준비를 하고 수동이나 자동으로 최종 배포를 하는 과정이다.
CI/CD 툴들에는 Jenkins, Buildkite, GitHub Actions,
GitLab CI/CD, Bitbucket Pipelines, circleci 등 다양하다.
반응형
댓글