Unverified Commit e68b0aef authored by Wolfgang Walther's avatar Wolfgang Walther
Browse files

ci/github-script/reviewers: improve "needs: reviewers" label

This should fix the bug where the "needs: reviewer" label was set too
early, just to be removed immediately, because reviewers were then
requested.
parent a23d0ab2
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -375,7 +375,10 @@ module.exports = async ({ github, context, core, dry }) => {
      })

      if (!pull_request.draft) {
        await handleReviewers({
        // We set this label earlier already, but the current PR state can be very different
        // after handleReviewers has requested reviews, so update it in this case to prevent
        // this label from flip-flopping.
        prLabels['9.needs: reviewer'] = await handleReviewers({
          github,
          context,
          core,
+9 −1
Original line number Diff line number Diff line
@@ -68,7 +68,8 @@ async function handleReviewers({
    log(
      `Too many reviewers (${reviewers.join(', ')}), skipping review requests.`,
    )
    return
    // false indicates, that we do have reviewers and don't need the "needs: reviewers" label.
    return false
  }

  const requested_reviewers = new Set(
@@ -113,6 +114,13 @@ async function handleReviewers({
      reviewers,
    })
  }

  // Return a boolean on whether the "needs: reviewers" label should be set.
  return (
    new_reviewers.size === 0 &&
    existing_reviewers.size === 0 &&
    requested_reviewers.size === 0
  )
}

module.exports = {