适配gitea 取消gogs(没有对应接口支持)

This commit is contained in:
Hua
2025-04-02 14:28:56 +08:00
parent 7ec5abe67f
commit 8480656ca4
9 changed files with 297 additions and 379 deletions

View File

@ -2,11 +2,15 @@ package platforms
import (
"code-review/services/types"
"code-review/utils"
"fmt"
)
// GiteeEvent Gitee 平台的 webhook 事件
type GiteeEvent struct {
apiBase string
auth *AuthConfig
Event string
client *httpClient
Action string `json:"action"`
ActionDesc string `json:"action_desc"`
@ -43,9 +47,11 @@ type GiteeEvent struct {
} `json:"pull_request"`
}
func NewGiteeEvent(baseURL, token string) *GiteeEvent {
func NewGiteeEvent(baseURL string, auth *AuthConfig) *GiteeEvent {
return &GiteeEvent{
client: newHTTPClient(baseURL, token),
apiBase: baseURL,
auth: auth,
client: newHTTPClient(baseURL, auth),
}
}
@ -71,16 +77,7 @@ func (e *GiteeEvent) ExtractChanges() (*types.CodeChanges, error) {
OldPath: change.OldPath,
}
switch change.Type {
case "added":
fileChange.Type = types.Added
case "modified":
fileChange.Type = types.Modified
case "deleted":
fileChange.Type = types.Deleted
case "renamed":
fileChange.Type = types.Renamed
}
fileChange.Type = utils.ParseFileType(change.Type)
changes.Files = append(changes.Files, fileChange)
}
@ -90,12 +87,12 @@ func (e *GiteeEvent) ExtractChanges() (*types.CodeChanges, error) {
func (e *GiteeEvent) PostComments(result *types.ReviewResult) error {
if e.client == nil {
return fmt.Errorf("client not initialized")
e.client = newHTTPClient(e.apiBase, e.auth)
}
for _, comment := range result.Comments {
body := map[string]interface{}{
"access_token": e.client.token,
"access_token": e.auth.Token,
"body": fmt.Sprintf("**Code Review Comment**\n\nFile: %s\nLine: %d\nSeverity: %s\n\n%s",
comment.Path,
comment.Line,
@ -119,7 +116,7 @@ func (e *GiteeEvent) PostComments(result *types.ReviewResult) error {
// 发送总结评论
if result.Summary != "" {
body := map[string]interface{}{
"access_token": e.client.token,
"access_token": e.auth.Token,
"body": fmt.Sprintf("**Code Review Summary**\n\n%s", result.Summary),
}