[CI/CD] CI/CD에 대하여

배현호·2021년 4월 27일
0

CICD 구축하기

목록 보기
1/3

우리는 서버 배포를 하는 과정에서 CI/CD라는 용어를 흔히 들어볼 수 있다.

  • CI/CD 파이프라인 구축했어?
  • CI 통과 안됐다고?

이 이외에도 유사한 말들을 흔히 접하게 된다.

그럼 도대체 CI/CD가 뭐고 각각의 의미가 무엇인지, 왜 사용하는지 등을 정리해 보았다.

CI/CD란?

  • CI/CD 또는 CICD는 일반적으로 지속적인 통합과 지속적인 배포 또는 지속적인 배포의 결합 된 관행을 말한다.
  • 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법이다.
  • 새로운 코드의 통합으로 인하여 개발 및 운영팀에 발생하는 문제를 해결하는 솔루션이다.
  • 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포로 구성되어 있다.

CI(Continuous Integration)

CI는 Continuous Integration의 약자로 지속적 통합이라는 의미이다.
지속적 통합이란, 어플리케이션의 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트 되어 공유 레포지토리(예: GitHub Repository)에 통합히는 것을 의미한다.

클래스와 기능에서부터 전체 애플리케이션을 구성하는 서로 다른 모듈에 이르기까지 모든 것에 대한 테스트를 수행할 수 있으며, 코드를 병합하는 과정에서 충돌이 생긴다면 CI를 통해 버그를 수정할 수 있다.
이로 인해 개발하는 코드의 품질을 좀 더 향상시킬 수 있으며, 새로운 업데이트의 검증 및 릴리즈의 시간을 단축시킬 수 있다.

CD(Continuous Delivery & Continuous Deployment)

CD는 지속적인 서비스 제공(Continuous Delivery)과 지속적인 배포(Continuous Deployment) 두 용어의 축약어이다.
두 가지 의미 모두 파이프라인의 추가 단계에 대한 자동화를 뜻하지만, 때로는 얼마나 많은 자동화가 이루어지고 있는지를 설명하기 위해 별도로 사용되기도 한다.

Continuous Delivery는 테스트를 거친 코드를 공유 레포지토리에 자동으로 업로드 하는 것을 의미한다.
Continuous Deployment는 변경된 결과를 고객이 사용하는 Product 환경까지 자동으로 Release(or depoly)하는 것을 의미한다.

Reference

profile
Spring Boot 공부하고 있는 고등학생입니다.

0개의 댓글