diff --git a/.gitea/workflows/code-review.yml b/.gitea/workflows/code-review.yml index 8426a4c..2c9fde3 100644 --- a/.gitea/workflows/code-review.yml +++ b/.gitea/workflows/code-review.yml @@ -1,4 +1,5 @@ name: AI Code Review (on comment) + on: issue_comment: types: [created, edited] @@ -7,15 +8,49 @@ jobs: review: runs-on: ubuntu-latest if: github.event.issue.pull_request && (startsWith(github.event.comment.body, 'openai') || github.event.comment.body == 'openai') + env: + ACTIONS_STEP_DEBUG: 'true' + BASE: https://devstar.cn + GH_TOKEN: ${{ secrets.GH_TOKEN }} + steps: + - name: Preflight - diff 接口可用性 + run: | + set -e + echo "repo=${{ github.repository }}" + echo "issue.number=${{ github.event.issue.number }}" + curl -sSf -H "Authorization: token $GH_TOKEN" -H "Accept: application/vnd.github.diff" "$BASE/api/v1/repos/${{ github.repository }}/pulls/${{ github.event.issue.number }}.diff" >/dev/null + echo "diff endpoint OK" + + - name: Preflight - 评论接口可用性 + run: | + set -e + curl -sSf -X POST \ + -H "Authorization: token $GH_TOKEN" \ + -H "Content-Type: application/json" \ + -d '{"body":"healthcheck from workflow"}' \ + "$BASE/api/v1/repos/${{ github.repository }}/issues/${{ github.event.issue.number }}/comments" >/dev/null + echo "comment endpoint OK" + + - name: Preflight - OpenAI 连接 + env: + OPENAI_TOKEN: ${{ secrets.OPENAI_TOKEN }} + OPENAI_PROXY: https://api.zhizengzeng.com + run: | + set -e + curl -sS -i ${OPENAI_PROXY:+--proxy $OPENAI_PROXY} \ + -H "Authorization: Bearer $OPENAI_TOKEN" \ + https://api.openai.com/v1/models | head -n 1 + - name: OpenAI Code Review uses: ingress-it-solutions/gitea-code-review-action@v0.1 env: - OPENAI_PROXY: https://api.zhizengzeng.com/v1 + # 可直连则删除本行;需代理则改成你的代理地址 + OPENAI_PROXY: https://api.zhizengzeng.com with: SOURCE_AT: gitea GITHUB_BASE_URL: https://devstar.cn - PROGRAMMING_LANGUAGE: 'JavaScript' + PROGRAMMING_LANGUAGE: 'JavaScript' # 避免使用 auto FULL_REVIEW_COMMENT: openai REVIEW_COMMENT_PREFIX: 'openai:' MAX_CODE_LENGTH: 6000