CI/CD란?
- ‘지속적 통합’과 ‘지속적 배포’를 아우르는 개발 방법론
- 개발자가 코드를 작성하는 순간부터 실제 사용자에게 서비스를 제공하는 순간까지의 모든 과정을 자동화하는 것을 목표로 함
CI (Continuous Integration)
- 지속적인 통합
- 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트 되어 공유 레포지토리에 통합하는 것
- 빌드와 테스트 자동화
장점
- 코드의 검증에 들어가는 시간이 줄어듬
- 개발 편의성 증가
- 항상 테스트 코드를 통과한 코드만이 레포지터리에 올라가기 때문에, 좋은 퀄리티 유지 가능
CD (Continuous Delivery & Continuous Deployment)
- 지속적인 서비스 혹은 지속적인 배포
- Continuous Delivery : 공유 레포지토리, 자동으로 Release 하는 것
- Continuous Deployment : Production 레벨까지 자동으로 deploy 하는 것