# CI/CD 파이프라인 (CI/CD Pipeline)

## 📌 Brief Summary
CI/CD는 지속적 통합(Continuous Integration)과 지속적 제공/배포(Continuous Delivery/Deployment)를 결합한 현대 소프트웨어 공학의 핵심 엔진입니다 [1]. 코드 변경 사항이 발생하는 즉시 자동으로 빌드, 테스트, 배포되도록 하여 개발 사이클을 단축하고 시스템을 통해 품질을 보장합니다 [1, 2].

## 📖 Core Content
* **CI (지속적 통합 - Continuous Integration)**
  - 모든 개발자가 작업한 코드를 빈번하게(일일 수회) 메인 브랜치에 통합합니다 [1].
  - 통합 시 자동 빌드와 자동 테스트가 수행되어 충돌을 조기에 발견하고 코드 무결성을 유지합니다 [1, 3].

* **CD (지속적 제공 및 배포 - Continuous Delivery/Deployment)**
  - **지속적 제공**: 테스트를 통과한 코드가 언제든 운영 환경으로 배포될 수 있는 신뢰할 수 있는 상태를 유지합니다 [1].
  - **지속적 배포**: 테스트를 통과한 변경 사항을 실제 운영 서버에 자동으로 즉시 반영합니다 [1].

* **보안 및 자동화 통합 (DevSecOps)**
  - **Shift-Left 보안**: 개발 초기 단계인 IDE 및 CI/CD 파이프라인 내에 SAST(정적 분석) 및 보안 스캔을 내장하여 취약점을 조기에 식별합니다 [4, 5].
  - **품질 게이트 (Quality Gates)**: 특정 보안 임계값이나 품질 기준을 충족하지 못할 경우 빌드를 실패하게 하거나 병합(Merge)을 차단하여 안정성을 확보합니다 [5, 6].

## ⚖️ Trade-offs & Caveats
- **무중단 배포 정책**: 과거의 정기 수동 배포 방식에서 기능 단위로 수시 배포하는 무중단 배포 정책으로의 패러다임 전환이 필요합니다 [1].
- **MLOps 확장**: 단순 코드 배포를 넘어 AI 모델의 성능을 모니터링하고 재학습시키는 MLOps 파이프라인(Continuous Training)으로 영역이 확장되고 있습니다 [1].

## 🔗 Knowledge Connections
- **Related Topics**: [[데브옵스 (DevOps)]], [[정적 애플리케이션 보안 테스트 (SAST)]], [[소프트웨어 개발 수명 주기 (SDLC)]], [[MLOps]]
- **Projects/Contexts**: [[GitHub Actions 워크플로우]], [[GitLab CI]], [[Jenkins]], [[Antigravity 배포 가이드]]

---
*Last updated: 2026-04-30*
