Files
2nd/10_Wiki/Topics/CI-CD 파이프라인 (CI-CD Pipeline).md
T

2.3 KiB

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