Home / AI / AI 용어사전 / CI/CD — 커밋 한 번으로 테스트·배포까지 자동화하는 구조
TERM
CI/CD — 커밋 한 번으로 테스트·배포까지 자동화하는 구조
On this page
코드를 저장소에 push하는 순간, 테스트가 자동으로 실행되고 서버에 배포까지 완료된다. 누군가 직접 버튼을 누르거나 명령을 입력하지 않아도 된다. CI/CD 파이프라인이 작동하는 방식이다.
정의
CI/CD(Continuous Integration / Continuous Delivery·Deployment)는 코드 변경을 자동으로 통합·검증·배포하는 소프트웨어 개발 방법론 및 도구 체계를 말한다. AI 프로젝트에서는 모델 평가, 프롬프트 회귀 테스트, 배포 자동화의 핵심 기반으로 활용된다. 두 단계인 CI와 CD는 각각 다른 역할을 맡는다.
CI와 CD의 구분
CI (Continuous Integration, 지속적 통합)
개발자가 코드를 git 저장소에 푸시할 때마다 자동으로 빌드와 테스트를 실행한다. 목표는 팀원 간 코드 충돌을 조기에 발견하고, 항상 동작하는 메인 브랜치를 유지하는 것이다. 하루에 수십 번 커밋이 발생해도 충돌은 자동으로 감지된다.
CD — Continuous Delivery (지속적 제공)
CI를 통과한 코드를 언제든 프로덕션에 배포할 수 있는 상태로 자동 준비한다. 실제 배포는 사람의 승인을 거친다. "배포 준비 완료" 상태를 상시 유지하는 데 초점이 있다.
CD — Continuous Deployment (지속적 배포)
사람의 개입 없이 CI 통과 즉시 프로덕션 서버에 자동 배포된다. 빠른 이터레이션이 가능하지만, 테스트 품질이 충분해야 안전하게 운용할 수 있다.
CI/CD 파이프라인 구조
코드 Push
→ CI: 빌드 + 테스트 실행
→ 통과: 스테이징 배포 (CD)
→ 사람 승인 또는 자동
→ 프로덕션 배포
→ 실패: 개발자 알림 (Slack, 이메일 등)대표적인 CI/CD 도구로는 GitHub Actions, GitLab CI, Jenkins, CircleCI가 있다. AI 프로젝트에서는 github-actions가 가장 널리 사용된다. git push 한 번에 .github/workflows/ 디렉터리 내 YAML 파일이 실행되는 구조다.
# .github/workflows/ci.yml 예시
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: npm install
- run: npm testAI 프로젝트에서의 CI/CD
AI 서비스는 일반 웹 서비스보다 CI/CD가 복잡해지는 경우가 많다.
프롬프트 회귀 테스트: 프롬프트 변경이 기존 답변 품질을 저하시키는지 자동 검증한다. 특정 입력에 대한 기대 출력을 미리 정의해두고, CI 단계에서 자동으로 비교한다.
모델 버전 관리: 새 모델 버전으로 교체 시 기존 응답과 비교 테스트를 수행한다. 응답 형식, 길이, 핵심 키워드 포함 여부를 자동으로 검증할 수 있다.
데이터 파이프라인 검증: 학습 데이터나 파인튜닝 파이프라인의 무결성을 검사한다. 스키마 변경이나 데이터 오염을 배포 전에 발견하는 역할을 한다.
docker와 함께 사용하면 CI 환경과 프로덕션 환경의 차이를 없앨 수 있어, "CI에서는 통과했는데 프로덕션에서 실패한다"는 문제를 방지할 수 있다.
관련 용어
- git — CI/CD의 트리거 기반이 되는 분산 버전 관리 시스템
- docker — CI/CD 환경 일관성을 보장하는 컨테이너 기술
- github-actions — GitHub 저장소 기반 CI/CD 자동화 도구
- devops — CI/CD를 포함한 개발·운영 통합 문화와 방법론
- unit-test — CI 단계에서 자동 실행되는 단위 테스트
백링크
이 문서를 참조하는 다른 페이지입니다.
Docker — 어디서든 똑같이 실행되는 컨테이너 기술의 원리
"내 컴퓨터에서는 되는데 서버에서는 안 된다." 개발자라면 누구나 마주치는 이 문제를 해결하는 것이 Docker의 핵심 존재 이유다. 환경 차이에서 비롯된 배포 실패를 컨테이너 기술로 원천 차단한다.
Docker — 어디서든 똑같이 실행되는 컨테이너 기술의 원리
"내 컴퓨터에서는 되는데 서버에서는 안 된다." 개발자라면 누구나 마주치는 이 문제를 해결하는 것이 Docker의 핵심 존재 이유다. 환경 차이에서 비롯된 배포 실패를 컨테이너 기술로 원천 차단한다.
Docker — 어디서든 똑같이 실행되는 컨테이너 기술의 원리
"내 컴퓨터에서는 되는데 서버에서는 안 된다." 개발자라면 누구나 마주치는 이 문제를 해결하는 것이 Docker의 핵심 존재 이유다. 환경 차이에서 비롯된 배포 실패를 컨테이너 기술로 원천 차단한다.
Git — 코드의 타임라인, AI 협업 프로젝트의 필수 기반
AI 코딩 도구들이 PR, 브랜치, 커밋을 자연스럽게 다루는 이유가 있다. 현대 소프트웨어 개발의 기반 언어가 Git이기 때문이다. Claude Code가 git commit 을 실행하고, Cursor가 변경사항을 diff로 보여주는 것 모두 Git 위에서 작동한다.
Git — 코드의 타임라인, AI 협업 프로젝트의 필수 기반
AI 코딩 도구들이 PR, 브랜치, 커밋을 자연스럽게 다루는 이유가 있다. 현대 소프트웨어 개발의 기반 언어가 Git이기 때문이다. Claude Code가 git commit 을 실행하고, Cursor가 변경사항을 diff로 보여주는 것 모두 Git 위에서 작동한다.
Git — 코드의 타임라인, AI 협업 프로젝트의 필수 기반
AI 코딩 도구들이 PR, 브랜치, 커밋을 자연스럽게 다루는 이유가 있다. 현대 소프트웨어 개발의 기반 언어가 Git이기 때문이다. Claude Code가 git commit 을 실행하고, Cursor가 변경사항을 diff로 보여주는 것 모두 Git 위에서 작동한다.