Advanced

CI/CD 파이프라인 구축 완전 가이드: Claude Code 활용

Claude Code로 GitHub Actions 기반 CI/CD 파이프라인을 구축하는 방법을 lint, 테스트, 빌드, 배포, 보안 스캔까지 예제로 정리했습니다.

Claude Code로 CI/CD 파이프라인 효율적으로 구축하기

CI/CD 설정 파일은 문법 디테일이 많아서 시행착오에 시간이 많이 걸리기 마련입니다. Claude Code를 활용하면 프로젝트에 맞는 파이프라인을 한 번에 생성할 수 있습니다.

GitHub Actions 기본 워크플로

> GitHub Actions 워크플로를 만들어줘.
> - PR이 생성되면 lint, 타입 체크, 테스트 실행
> - main에 머지되면 빌드 후 배포
> - Node.js 20, pnpm 사용
> - 캐시 설정으로 속도 개선
# .github/workflows/ci.yml
name: CI

on:
  pull_request:
    branches: [main]
  push:
    branches: [main]

concurrency:
  group: ${{ github.workflow }}-${{ github.ref }}
  cancel-in-progress: true

jobs:
  lint-and-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: pnpm/action-setup@v4
        with:
          version: 9

      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: pnpm

      - run: pnpm install --frozen-lockfile

      - name: Lint
        run: pnpm lint

      - name: Type Check
        run: pnpm tsc --noEmit

      - name: Test
        run: pnpm test -- --coverage

      - name: Upload Coverage
        if: github.event_name == 'pull_request'
        uses: actions/upload-artifact@v4
        with:
          name: coverage
          path: coverage/

  deploy:
    needs: lint-and-test
    if: github.ref == 'refs/heads/main' && github.event_name == 'push'
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: pnpm/action-setup@v4
        with:
          version: 9

      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: pnpm

      - run: pnpm install --frozen-lockfile
      - run: pnpm build

      - name: Deploy to Vercel
        uses: amondnet/vercel-action@v25
        with:
          vercel-token: ${{ secrets.VERCEL_TOKEN }}
          vercel-org-id: ${{ secrets.VERCEL_ORG_ID }}
          vercel-project-id: ${{ secrets.VERCEL_PROJECT_ID }}
          vercel-args: --prod

Docker 이미지 빌드 & 푸시

> Docker 이미지를 빌드해서 GitHub Container Registry에
> 푸시하는 워크플로를 만들어줘.
> 태그는 git 태그와 커밋 SHA로.
# .github/workflows/docker.yml
name: Docker Build

on:
  push:
    tags: ["v*"]

jobs:
  build-and-push:
    runs-on: ubuntu-latest
    permissions:
      contents: read
      packages: write

    steps:
      - uses: actions/checkout@v4

      - uses: docker/setup-buildx-action@v3

      - uses: docker/login-action@v3
        with:
          registry: ghcr.io
          username: ${{ github.actor }}
          password: ${{ secrets.GITHUB_TOKEN }}

      - uses: docker/metadata-action@v5
        id: meta
        with:
          images: ghcr.io/${{ github.repository }}
          tags: |
            type=semver,pattern={{version}}
            type=sha,prefix=

      - uses: docker/build-push-action@v5
        with:
          context: .
          push: true
          tags: ${{ steps.meta.outputs.tags }}
          cache-from: type=gha
          cache-to: type=gha,mode=max

Docker 환경 구성에 대해서는 Docker 환경 통합 가이드에서 자세히 설명하고 있습니다.

E2E 테스트 통합

> Playwright E2E 테스트를 CI/CD에 넣어줘.
> 테스트 실패 시 스크린샷도 저장하도록.
  e2e-test:
    needs: lint-and-test
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      - uses: pnpm/action-setup@v4
        with:
          version: 9

      - uses: actions/setup-node@v4
        with:
          node-version: 20
          cache: pnpm

      - run: pnpm install --frozen-lockfile
      - run: npx playwright install --with-deps chromium

      - name: Run E2E Tests
        run: pnpm test:e2e

      - uses: actions/upload-artifact@v4
        if: failure()
        with:
          name: playwright-report
          path: playwright-report/
          retention-days: 7

테스트 전략 전반은 테스트 전략 완전 가이드, Git 워크플로와의 연동은 Git 작업 완전 자동화도 함께 참고해 보세요.

보안 스캔 추가

> 의존성 패키지 취약점 스캔을 CI에 추가해줘.
  security:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: npx audit-ci --moderate

보안 점검의 상세한 내용은 보안 감사 자동화에서 다루고 있습니다.

정리

Claude Code를 활용하면 프로젝트에 최적화된 CI/CD 파이프라인을 짧은 시간에 구축할 수 있습니다. lint, 테스트, 빌드, 배포의 각 단계를 명확히 지시하면 실제 운영에 쓸 수 있는 워크플로가 생성됩니다.

GitHub Actions의 자세한 내용은 GitHub Actions 공식 문서, Claude Code에 대해서는 Anthropic 공식 문서를 참고하세요.

#Claude Code #CI/CD #GitHub Actions #automation #DevOps

Claude Code 워크플로우를 한 단계 업그레이드하세요

지금 바로 Claude Code에 복사해 쓸 수 있는 검증된 프롬프트 템플릿 50선.

무료 제공

무료 PDF: 5분 완성 Claude Code 치트시트

주요 명령어, 단축키, 프롬프트 예시를 A4 한 장에 정리했습니다.

PDF 다운로드
M

이 글을 작성한 사람

Masa

Claude Code를 적극 활용하는 엔지니어. 10개 언어, 2,000페이지 이상의 테크 미디어 claudecode-lab.com을 운영 중.