GitLab CI/CD는 GitLab에 기본으로 내장된 CI/CD 시스템이다.
별도의 CI 툴(Jenkins, CircleCI 등)을 붙이지 않아도,
저장소 하나만 있으면 바로 파이프라인을 구성할 수 있다.
별도 툴 설치 ❌
GitLab 저장소에 바로 연동 ⭕
GitLab CI/CD를 배우는 게 아니라, CI/CD 파이프라인을 배우는 거고 GitLab은 그걸 구현하는 수단 중 하나다.
stages:
- build
- test
- deploy
test:
stage: test
script:
- npm install
- npm test
build → test → deploy
Docker
VM
Shell
Kubernetes 등
stages:
- install
- build
- deploy
// 의존성을 항상 동일한 상태로 설치
install:
stage: install
script:
- npm ci
// 프로젝트가 빌드 가능한 상태인지 검증
// 실제 배포 전에 가장 중요한 단계
build:
stage: build
script:
- npm run build
// main 브랜치에 머지될 때만 실행
// 현재는 배포 동작을 흉내만 내는 상태
// 실제 배포를 하려면 이 부분에 서버 업로드 / 클라우드 배포 명령이 추가되어야 한다.
deploy:
stage: deploy
script:
- echo "Deploying..."
only:
- main