cr bot์ ChatGPT๋ฅผ ํ์ฉํ ์ฝ๋๋ฆฌ๋ทฐ ๋ก๋ด์ ๋๋ค.
Translation Versions: ENGLISH | ็ฎไฝไธญๆ | ็น้ซไธญๆ | ํ๊ตญ์ด | ๆฅๆฌ่ช
โ๏ธ
์ค์น: apps/cr-gpt;
- cr bot์ ์ ์ฉํ ๋ ํฌ์งํ ๋ฆฌ ํํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
settings
ํด๋ฆญsecrets and variables
๋ฉ๋ด ๋ฐ์actions
๋ฅผ ํด๋ฆญVariables
ํญ์ผ๋ก ๋ณ๊ฒฝํฉ๋๋ค,New repository variable
๋ฒํผ์ ๋๋ฌ์ ์๋ก์ดOPENAI_API_KEY
๋ณ์๋ฅผ ์์ฑํฉ๋๋ค. ๋ณ์์ ๊ฐ์ผ๋ก ๋น์ ์ open api key ๋ฅผ ์ ๋ ฅํฉ๋๋ค. (OpenAI ํํ์ด์ง์์ api ํค๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.)
- ์๋ก์ด Pull request๋ฅผ ์์ฑํ๋ฉด ๋ก๋ด์ด ์๋์ผ๋ก ์ฝ๋ ๋ฆฌ๋ทฐ๋ฅผ ์ํํ๋ฉฐ, ๋ฆฌ๋ทฐ ์ ๋ณด๋ Pull request ํ์๋ผ์ธ / ํ์ผ ๋ณ๊ฒฝ ๋ถ๋ถ์ ํ์๋ฉ๋๋ค.
git push
์ดํ์ Pull request๋ฅผ ์ ๋ฐ์ดํธํ๋ฉด, cr bot์ ๋ณ๊ฒฝ๋ ํ์ผ์ ๋ค์ ๊ฒํ ํฉ๋๋ค.
์์:
๊นํ๋ธ ๋ด์ด humble vps์์ ์๋น์ค๋๋ฏ๋ก, ํญ์ ์์ ์ ์ธ ์ํ์์ ๋ณด์ฅํ ์ ์๊ธฐ ๋๋ฌธ์ ์ด ๋ฐฉ๋ฒ์ ๊ถ์ฅํฉ๋๋ค.
OPENAI_API_KEY
๋ฅผ ๋น์ ์ github actions secrets ์ ์ถ๊ฐํฉ๋๋ค..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 }}
# optional
LANGUAGE: Korean
PROMPT:
IGNORE_PATTERNS: /node_modules,*.md # Regex pattern to ignore files, separated by comma
- ์ฝ๋๋ฅผ clone ํฉ๋๋ค.
.env.example
์.env
๋ก ๋ณต์ ํ๊ณ , ํ๊ฒฝ๋ณ์(env variable)์ ์ ๋ ฅํฉ๋๋ค.- ์ข ์์ฑ(deps)๋ค์ ์ค์นํ๊ณ ์คํํฉ๋๋ค.
npm i
npm -i g pm2
npm run build
pm2 start pm2.config.cjs
probot ๋ ์์ธํ ์ ๋ณด
# ์ข
์์ฑ ์ค์น
npm install
# ๋ด ์คํ
npm start
# 1. ์ปจํ
์ด๋ ๋น๋
docker build -t cr-bot .
# 2. ์ปจํ
์ด๋ ์์
docker run -e APP_ID=<app-id> -e PRIVATE_KEY=<pem-value> cr-bot
๋ง์ฝ ๋น์ ์ด cr-bot์ ๊ฐ์ ์ ์์ด๋ ๋ฒ๊ทธ ์ ๊ณ ๊ฐ ์์ผ๋ฉด issue๋ฅผ ์ด์ด์ฃผ์ธ์! ๋ชจ๋ ๋น์ ์ ๊ธฐ์ฌ๋ฅผ ํ์ํฉ๋๋ค.
์์ธํ ๋ด์ฉ์ ๊ธฐ์ฌ ๊ฐ์ด๋๋ฅผ ํ์ธํ์ธ์.
์ด ํ๋ก์ ํธ๋ codereview.gpt์์ ์๊ฐ์ ์ป์์ต๋๋ค.
ISC ยฉ 2023 anc95