AS-IS
팀 프로젝트인데 팀원이 바쁘다. 충분히 이해가 되는 상황이다. 나도 바빠서 프로젝트에 신경 쓰지 못했던 때가 있었듯이, 사람이 언제 바빠질지는 아무도 모른다.
이런 상황을 대비하고 더 넓은 사고를 위해, chatGPT 코드리뷰를 도입하고자 한다.
TO-BE
- PR을 올린다.
- chatGPT가 코드리뷰를 해준다.
- 다양한 방향성을 제시하면 좋을 듯하다.
자료조사
GitHub Action : https://github.com/anc95/ChatGPT-CodeReview
: Code Review Bot
추가 정보
- Self Hosting이 가능하다. (Docker를 띄우는 방식)
개발
GitHub 설정
- cr bot을 적용할 레포지토리로 이동
settings클릭secrets and variables메뉴 밑의actions를 클릭Secrets탭으로 변경 (API 키는 평문으로 노출되는 Variables가 아니라 Secrets에 넣어야 한다)New repository secret버튼을 눌러서 새로운OPENAI_API_KEY시크릿을 생성
- 변수의 값으로 open api key 입력
Actions 설정
# .github/workflows/cr.yml
name: Code Review
permissions:
contents: read
pull-requests: write
on:
pull_request:
types: [opened, reopened, synchronize]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: anc95/ChatGPT-CodeReview@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
LANGUAGE: Korean