Chat GPT 3.5로 풀리퀘스트 시 코드리뷰 자동화 하기
개요
순수 개발기간이 3주인 짧은 프로젝트를 진행하고 있습니다.
팀원끼리 코드리뷰를 하면서 코드 퀄리티를 높이면 좋겠지만 짧은 개발기간 때문에 너무 어렵네요
그래서 PR시 Chat GPT가 코드리뷰를 하면 어떨까라는 생각에 CI 과정에 코드리뷰 자동화를 추가하였습니다.
Open AI API 키 발급
Open AI에서 API 키를 발급 받습니다.
* Private key를 잘 저장하세요!!
Github 키 등록
Git Actions Workflow에서 사용하기 위해 Github에 발급받은 API 키를 등록합니다.
* Setting -> Secrets and variables -> Actions
Enviroment secrets
Github Actions 환경에만 적용이 가능합니다.
Repository secrets
Github Actions을 포함한 Repository 전역에서 사용가능합니다.
Workflow 작성
Github Actions workflows yml 파일을 작성합니다.
* 파일위치 : .github -> workflows
codeReview.yml
name: Code Review
permissions:
contents: read
pull-requests: write
on:
pull_request:
types: [opened]
branches:
- dev
jobs:
code-review:
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
MODEL: gpt-3.5-turbo
permissions: 저장소에 대해 수행할 수 있는 작업을 정의
- contents: read - 저장소의 컨텐츠를 읽을 수 있는 권한
- pull-requests: write -풀 리퀘스트 코멘트 작성 권한
on: 어떤 이벤트에 의해 트리거될지 정의
- 풀 리퀘스트가 'dev' 브랜치에 열릴 때 워크플로우 실행
jobs: 워크플로우 내에서 실행될 작업을 정의.
- anc95/ChatGPT-CodeReview@main 외부 액션을 사용
MODEL: gpt-3.5-turbo 사용
코드리뷰
dev 브랜치에 Open된 PR에 대해 코드리뷰 코멘트가 잘 작성되었습니다!
Open AI Model 별 특징
사용하는 모델 별로 비용이 상이합니다.
확인하시고 사용하세요
* GPT-5 모델은 비싸서 사용하지 않고 3.5 모델을 사용했습니다.
비용
약 150회 정도에 PR에 대해서 코드리뷰를 진행한 비용입니다.
비용은 많이 나오지 않네요!
'DevOps > 깃허브' 카테고리의 다른 글
[Github] Jira 티켓번호 커밋 메세지 자동화 하기 (0) | 2024.01.31 |
---|---|
[Github Actions] React 프로젝트 AWS S3, CloudFront 자동배포 하기 (0) | 2024.01.25 |
[Github] Branch Protection Rule를 설정하기 (0) | 2024.01.19 |
[Github] gitignore가 적용이 안될 때 (0) | 2024.01.17 |