Published 2023. 2. 28. 16:04
반응형

CI 란?

  • Continuous Integration (지속적인 통합)
    • 기능 개발, 버그 수정 등으로 발생한 코드 변경사항들이 main repository에 merge 되는 것
    • CI에서는 코드 변경사항이 주기적으로 빈번하게 merge 되어야 함 => 충돌을 피할 수 있기 때문에 개발 생산성이 향상됨
    • merge된 코드들의 build, test를 자동화 하는 것이 중요 => 바로 결과를 확인할 수 있기 때문에 문제점을 빠르게 발견하고 수정할 수 있음

CD 란?

  • Continuous Delivery (지속적인 제공), Continuous Deployment (지속적인 배포)
    • Continuous Delivery와 Continuous Deployment는 merge된 코드를 배포하는 것
    • Delivery는 수동적으로 확인 후 배포하는 반면, Deployment는 merge에 성공하면 배포까지 자동화
    • 개발자들이 배포보다는 개발에 더 집중할 수 있게 해주는 장점이 있음

CI/CD

  • 개발자가 main repository에 코드의 변경사항이나 추가사항을 merge 하면 자동으로 build, test 과정을 거쳐 release 준비를 마치고, 이를 수동/자동으로 배포까지 하는 과정
  • CI/CD 툴로는 Jenkins, Buildkite, Github Actions, GitLab CI/CD 등이 있음
반응형

↓ 클릭시 이동

복사했습니다!