CI/CD pipeline은 코드가 commit에서 deploy까지 거치는 자동화된 단계들의 시퀀스로, 일반적으로 build, 테스트, deploy 단계를 포함합니다. 코드 변경을 deploy된 릴리스로 바꾸는 자동화된 경로를 정의합니다.
pipeline 개념
PIPELINE은 각 코드 변경마다 순서대로 실행되는 STAGE들의 자동화된 워크플로우입니다:
→ 이벤트(push, PR, merge, 스케줄)에 의해 트리거됨
→ 각 단계가 자동으로 실행됨; 단계가 실패하면 pipeline이 멈춤 (깨진 코드는
이후 단계나 production으로 진행되지 않음)
→ 자동화, 일관성, 빠른 피드백 제공
일반적인 pipeline 단계
1. SOURCE → 코드 변경에 의해 트리거 (코드 checkout)
2. BUILD → 코드 컴파일, 의존성 설치, artifact/이미지 build
3. TEST → 자동 테스트 실행 (단위, 통합), linting, 정적 분석
4. (SECURITY) → 보안 스캔 (의존성, 코드, 컨테이너 이미지)
5. PACKAGE → deploy 가능한 artifact 생성 (예: registry에 push된 Docker 이미지)
6. STAGING에 DEPLOY → 테스트/staging 환경에 deploy; 추가 테스트 실행 (e2e)
7. PRODUCTION에 DEPLOY → production에 릴리스 (delivery는 수동 승인, 또는
deployment는 자동)
→ 각 단계가 다음을 게이팅: 실패는 pipeline을 멈춤 (품질 게이트).
