fixed issue with empty missing reviewers #4

Open
atartamo wants to merge 1 commits from bugfix/empty-missing-reviewers into ibs_state
2 changed files with 9 additions and 10 deletions

View File

@@ -723,8 +723,12 @@ func (gitea *GiteaTransport) CreatePullRequestIfNotExist(repo *models.Repository
}
func (gitea *GiteaTransport) RequestReviews(pr *models.PullRequest, reviewers ...string) ([]*models.PullReview, error) {
activeReviewers := slices.DeleteFunc(reviewers, func(s string) bool { return s == "" })
if len(activeReviewers) == 0 {
return nil, nil
}
reviewOptions := models.PullReviewRequestOptions{
Reviewers: reviewers,
Reviewers: activeReviewers,
}
review, err := gitea.client.Repository.RepoCreatePullReviewRequests(

View File

@@ -422,21 +422,16 @@ func (rs *PRSet) AssignReviewers(gitea GiteaReviewFetcherAndRequesterAndUnreques
if len(missingReviewers) > 0 {
LogDebug(" Requesting reviews from:", missingReviewers)
if !IsDryRun {
for _, r := range missingReviewers {
if _, err := gitea.RequestReviews(pr.PR, r); err != nil {
LogError("Cannot create reviews on", PRtoString(pr.PR), "for user:", r, err)
}
if _, err := gitea.RequestReviews(pr.PR, missingReviewers...); err != nil {
LogError("Cannot create reviews on", PRtoString(pr.PR), "for user:", strings.Join(missingReviewers, ","), err)
}
}
}
if len(extraReviewers) > 0 {
LogDebug(" UnRequesting reviews from:", extraReviewers)
if !IsDryRun {
for _, r := range extraReviewers {
org, repo, idx := pr.PRComponents()
if err := gitea.UnrequestReview(org, repo, idx, r); err != nil {
LogError("Cannot unrequest reviews on", PRtoString(pr.PR), "for user:", r, err)
}
if err := gitea.UnrequestReview(pr.PR.Base.Repo.Owner.UserName, pr.PR.Base.Repo.Name, pr.PR.Index, extraReviewers...); err != nil {
LogError("Cannot unrequest reviews on", PRtoString(pr.PR), "for user:", strings.Join(extraReviewers, ","), err)
}
}
}