이 레포지토리는 GitHub Actions를 활용한 PR 코드 리뷰를 자동화합니다. 다른 프로젝트에서 이 워크플로우를 Reusable Workflow로 손쉽게 사용할 수 있도록 제공됩니다.
🔹 프로젝트의 .github/workflows/code-review.yml
파일을 생성하고 아래 내용을 추가하세요.
(깃허브 Add file 로 만드시면 편합니다!)
name: Code Review with Google Gemini
on:
pull_request:
types: [opened, synchronize]
permissions:
contents: read
pull-requests: write
jobs:
review:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.MY_GITHUB_PAT }}
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: pip install google-generativeai requests
- name: Download review_gemini.py from ai-code-review
run: wget -O review_gemini.py https://raw.githubusercontent.com/tnvnfdla1214/ai-code-review/main/scripts/review_gemini.py
- name: Run code review script
run: python review_gemini.py
env:
GOOGLE_API_KEY: ${{ secrets.google_api_key }}
GITHUB_TOKEN: ${{ secrets.MY_GITHUB_PAT }}
GITHUB_EVENT_NUMBER: ${{ github.event.pull_request.number }}
🔹 사용하려면 Settings → Secrets and variables → Actions → New repository secret 에서 아래 두 개의 Secrets를 추가하세요.
Secret Name | 설명 |
---|---|
GOOGLE_API_KEY | Google Gemini API Key (Google Cloud Console에서 발급) |
MY_GITHUB_PAT | GitHub Personal Access Token (PR 댓글을 달기 위해 필요) |
📌 PAT(Token) 권한 설정:
- repo → 전체 레포지토리 읽기/쓰기 (read/write)
- pull_requests → PR 파일 조회 및 댓글 작성 가능 (write)
- PR 생성 또는 변경 감지 → GitHub Actions가 실행됨
- PR의 변경된 파일 조회 → GitHub API를 사용해 코드 가져옴
- Google Gemini API에 코드 리뷰 요청
- PR에 코드 리뷰 결과 자동 댓글 작성