CI/CD

·2022년 8월 20일
0

CI는 CONTINUOUS INTEGRATION이고 CD는 CONTINUOUS DELIVERY이다.

CI/CD는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법이다. CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포이다. CI/CD는 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제(일명 “인테그레이션 헬(integration hell)”)을 해결하기 위한 솔루션이다.

특히 CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공한다. 이러한 구축 사례를 일반적으로 “CI/CD 파이프라인”이라 부르며 개발 및 운영팀의 애자일 방식 협력을 통해 지원된다.플리케이션 통합 전략의 일부로 제공될 수 있다.


CI와 CD는 커버하는 프로세스의 범위 차이

코드 레벨의 테스트까지 자동화하는 것이 CI이며 시스템 테스트 및 배포 등 실행 환경 과 릴리즈까지 자동화하는 것이 CD이다.

CI (지속적인 통합) / CD (지속적인 전달)을 적용하여 품질 향상과 개발 효율성을 동시에 달성하고 릴리즈하는 기간도 단축한다.
최근에 비즈니스의 변화가 빨라지면서 시스템과 서비스를 신속하게 변화해야 하는 필요성이 있다.
그런 배경에서 현재의 CI (지속적인 통합) / 지속적인 딜리버리 (CD)의 활용이 확산되고 있다.


지속적인 통합 (CI) 의 장점

CI (지속적인 통합)에서는 개발자가 자신이 변경한 코드를 자주 소스코드 저장소에 커밋하고 그때마다 자동화 된 빌드와 테스트를 실행한다.
짧은 사이클로 통합을 반복하면서 통합시 발생된 오류를 신속하게 수정하여 개발팀은 통합된 소프트웨어를보다 신속하게 개발할 수 있게 된다.

지속적인 전달 (CD) 의 장점

지속적인 전달(CD)을 할 수있게 된 배경은 클라우드와 컨테이너 기술의 확산과 인프라를 코드로 관리할 수 있게 되어서이다. 따라서 소스 커밋에서 릴리즈까지 모든 작업을 자동으로 수행할 수 있다.


참고 : CI / CD

profile
파워블로거입니다 주인이 힘이 센 건 아니고 그냥 하고 싶습니다

0개의 댓글