forked from NYANDEV/forgejo
Add default CommitID for create pull review api (#11334)
If user create pull review through api but not set CommitID, I think it's necessary to use last headCommitID as default seting, or this review will be considered as stale review which is wrong Signed-off-by: a1012112796 <1012112796@qq.com>
This commit is contained in:
parent
c58bc4bf80
commit
119173130a
1 changed files with 19 additions and 0 deletions
|
@ -12,6 +12,7 @@ import (
|
|||
"code.gitea.io/gitea/models"
|
||||
"code.gitea.io/gitea/modules/context"
|
||||
"code.gitea.io/gitea/modules/convert"
|
||||
"code.gitea.io/gitea/modules/git"
|
||||
api "code.gitea.io/gitea/modules/structs"
|
||||
"code.gitea.io/gitea/routers/api/v1/utils"
|
||||
pull_service "code.gitea.io/gitea/services/pull"
|
||||
|
@ -313,6 +314,24 @@ func CreatePullReview(ctx *context.APIContext, opts api.CreatePullReviewOptions)
|
|||
return
|
||||
}
|
||||
|
||||
// if CommitID is empty, set it as lastCommitID
|
||||
if opts.CommitID == "" {
|
||||
gitRepo, err := git.OpenRepository(pr.Issue.Repo.RepoPath())
|
||||
if err != nil {
|
||||
ctx.ServerError("git.OpenRepository", err)
|
||||
return
|
||||
}
|
||||
defer gitRepo.Close()
|
||||
|
||||
headCommitID, err := gitRepo.GetRefCommitID(pr.GetGitRefName())
|
||||
if err != nil {
|
||||
ctx.ServerError("GetRefCommitID", err)
|
||||
return
|
||||
}
|
||||
|
||||
opts.CommitID = headCommitID
|
||||
}
|
||||
|
||||
// create review comments
|
||||
for _, c := range opts.Comments {
|
||||
line := c.NewLineNum
|
||||
|
|
Loading…
Reference in a new issue