TechFeedTechFeed
Cloud & DevOps

GitHub Actions CI/CD 실전 가이드

GitHub Actions로 빌드, 테스트, 배포 자동화 파이프라인을 구축하는 방법을 정리한다. YAML 문법, 재사용 워크플로우, 시크릿 관리, 매트릭스 빌드와 실전 CI/CD 예시를 포함한다.

한 줄 요약: GitHub Actions로 push 시 자동 테스트, PR 시 코드 리뷰, main 머지 시 배포까지 전체 CI/CD 파이프라인을 YAML 하나로 구성할 수 있다.

GitHub Actions는 GitHub 저장소에 내장된 CI/CD 서비스로, 별도 서버 설정 없이 워크플로우를 정의할 수 있다. 이 가이드는 실전에서 가장 많이 쓰는 패턴을 정리한다.

왜 GitHub Actions인가

코드가 이미 GitHub에 있다면 CI/CD도 GitHub에서 하는 게 가장 자연스럽습니다. 무료 2000분/월(퍼블릭 무제한), YAML 기반 설정, 마켓플레이스의 풍부한 액션.

왜 GitHub Actions인가 — 클라우드 인프라 아키텍처
GitHub Actions CI/CD 실전 가이드 — 클라우드 인프라 아키텍처 (출처: 공식 문서 및 벤치마크 데이터 기반)

워크플로우는 .github/workflows/ 디렉토리에 YAML 파일로 정의한다. 핵심 구조: trigger(on: push, pull_request), jobs(병렬 실행 가능한 작업 그룹), steps(순차 실행되는 개별 명령).

CI + 배포 워크플로우
name: CI/CD on: push: { branches: [main] } pull_request: { branches: [main] } jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: { node-version: 20 } - run: npm ci - run: npm run lint - run: npm test deploy: needs: test if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - run: npm ci && npm run build - uses: amondnet/vercel-action@v25 with: vercel-token: ${{ secrets.VERCEL_TOKEN }}

캐싱으로 CI 속도를 크게 단축할 수 있다. actions/cache로 node_modules를 캐싱하면 npm ci 시간이 수십 초에서 수 초로 줄어든다. 또는 actions/setup-node@v4cache: 'npm' 옵션으로 간편하게 설정 가능하다.

기본 워크플로우 구조

핵심 구조: on(트리거) → jobs(작업 단위) → steps(단계). push/PR 시 자동 실행되며, 행렬 전략으로 여러 환경을 병렬 테스트할 수 있습니다.

기본 워크플로우 구조 — 배포 파이프라인 다이어그램
GitHub Actions CI/CD 실전 가이드 — 배포 파이프라인 다이어그램 (출처: 공식 문서 및 벤치마크 데이터 기반)

실전 레시피

자주 쓰는 워크플로우: PR 시 린트+테스트, main 머지 시 자동 배포, 스케줄 기반 정기 작업, AI 코드 리뷰 연동(Claude Code).

실전 레시피 — 비용 비교 분석 차트
GitHub Actions CI/CD 실전 가이드 — 비용 비교 분석 차트 (출처: 공식 문서 및 벤치마크 데이터 기반)

고급 워크플로우 패턴

Matrix 빌드: Node.js 18/20/22, OS Linux/macOS/Windows 조합으로 여러 환경에서 동시에 테스트. Reusable Workflows: 공통 CI 로직을 별도 저장소에 정의하고 다른 프로젝트에서 호출. Path filtering: 특정 디렉토리가 변경될 때만 해당 서비스의 CI를 실행.

비용 팁: 퍼블릭 저장소는 GitHub Actions가 무료다. 프라이빗 저장소는 월 2,000분(무료 플랜) 기준으로, 캐싱과 path filtering으로 불필요한 실행을 줄여 분 사용량을 최적화하라.
github-actionsci-cd자동화배포워크플로우

관련 포스트

GitHub Actions CI/CD 비용이 월 $2,000을 넘었을 때 — 워크플로우 최적화로 80% 절감한 사례2026-03-29개발자를 위한 Docker 실전 가이드 20262026-02-19개발자가 알아야 할 Kubernetes 기초2026-02-21Terraform 입문 — 인프라를 코드로 관리하기2026-02-25