## GitHub Actions 문서 개요
### 1. 소개 (Introduction)
- GitHub Actions란 무엇인가?
- CI/CD(Continuous Integration / Continuous Deployment) 개념
- GitHub Actions의 주요 특징 (워크플로우, 이벤트 기반 실행 등)
### 2. 기본 개념
- Workflow (워크플로우)
- Job (잡)
- Step (스텝)
- Action (액션)
- Runner (실행 환경)
### 3. 기본 사용법
- `.github/workflows/` 디렉토리 구조
- `yaml` 문법 개요
- 첫 번째 워크플로우 작성하기 (Hello World)
- 이벤트 트리거 (`push`, `pull_request`, `schedule` 등)
### 4. 주요 기능
- 다양한 이벤트 트리거 (코드 푸시, PR, 이슈, 릴리즈 등)
- 환경 변수 및 시크릿 관리 (`secrets`)
- 캐싱 (`actions/cache`)
- 매트릭스 빌드 (다양한 OS/Node 버전 등)
### 5. 실전 활용
- Node.js/React 프로젝트 자동 빌드 및 테스트
- Python 패키지 테스트 & 배포 (PyPI)
- Docker 이미지 빌드 및 푸시
- 정적 사이트 자동 배포 (GitHub Pages, Vercel, Netlify)
### 6. 고급 주제
- Self-hosted Runner 설정
- 워크플로우 간 아티팩트 공유
- 재사용 가능한 워크플로우 (Reusable workflows)
- 모노레포(Monorepo) 환경에서의 GitHub Actions 전략
### 7. 보안 및 베스트 프랙티스
- 시크릿 안전하게 관리하기
- 최소 권한 원칙 (Principle of Least Privilege)
- 의존성 무결성 검사 (`dependabot`)
- 오픈소스 액션 사용 시 주의사항
### 8. 디버깅 및 문제 해결
- 워크플로우 로그 확인 방법
- 실패한 Job/Step 디버깅하기
- 흔히 발생하는 에러 사례와 해결법
### 9. 운영 및 관리
- 빌드 시간 및 비용 최적화
- 캐싱 전략
- 대규모 팀에서의 GitHub Actions 관리
- GitHub Enterprise와의 통합
### 10. 최신 동향
- GitHub Actions 마켓플레이스 소개
- 인기 있는 오픈소스 액션 (e.g., `actions/checkout`, `actions/setup-node`)
- 2025년 기준 새로운 기능 및 로드맵