GitHub Actions는 「코드 푸시·PR 시 자동으로 테스트·빌드·배포」를 실행하는 GitHub 내장 CI/CD입니다.
파이썬 프로젝트의 사실상 표준.
기본 구조.
.github/workflows/test.yml에 YAML로 워크플로 정의.
on: [push, pull_request]로 트리거.
jobs.test.runs-on: ubuntu-latest.
steps에 actions/checkout, setup-python, pip install, pytest 같은 단계 나열.
최소 예시.
- uses: actions/checkout@v4 / - uses: actions/setup-python@v5 with python-version: "3.11" / - run: pip install -r requirements.txt / - run: pytest.
세 단계로 매 커밋마다 테스트 자동.
매트릭스 빌드.
strategy.matrix: python-version: ["3.9", "3.10", "3.11", "3.12"].
한 워크플로가 자동으로 4개 버전에서 테스트.
라이브러리 호환성 검증의 표준 패턴.
추가 가능한 단계.
1) 캐시 — pip 캐시로 시간 단축.
2) 커버리지 — codecov 업로드.
3) 빌드 — wheel 만들기.
4) 자동 배포 — main 브랜치 머지 시 PyPI 업로드(twine + 토큰).
5) 알림 — 슬랙·디스코드.
한 파일에 다 표현 가능.
한 줄 요약
GitHub Actions는 푸시·PR 자동 CI/CD.
setup-python + pytest 3줄로 시작, 매트릭스로 다중 버전 테스트, 캐시·배포·알림까지 한 YAML에.
사실상 표준.
더 알아볼 것
- actions/cache로 pip 캐시
- secrets 관리
- reusable workflow