Unverified Commit 64f9a7ed authored by Wolfgang Walther's avatar Wolfgang Walther Committed by GitHub
Browse files

ci/github-script/bot: skip expired artifacts, log PR author;...

ci/github-script/bot: skip expired artifacts, log PR author; ci/github-script/reviewers: convert all usernames to lowercase (#464046)
parents 63d56e45 a88711a0
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ module.exports = async ({ github, context, core, dry }) => {
          name: 'maintainers',
        })
      ).data.artifacts[0]
      if (!artifact) continue
      if (!artifact || artifact.expired) continue

      await artifactClient.downloadArtifact(artifact.id, {
        findBy: {
@@ -152,6 +152,8 @@ module.exports = async ({ github, context, core, dry }) => {
      })
    ).data

    log('author', pull_request.user?.login)

    const maintainers = await getMaintainerMap(pull_request.base.ref)

    const merge_bot_eligible = await handleMerge({
+5 −5
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@ async function handleReviewers({
  const pull_number = pull_request.number

  const requested_reviewers = new Set(
    pull_request.requested_reviewers.map(({ login }) => login),
    pull_request.requested_reviewers.map(({ login }) => login.toLowerCase()),
  )
  log(
    'reviewers - requested_reviewers',
@@ -22,7 +22,7 @@ async function handleReviewers({
  )

  const existing_reviewers = new Set(
    reviews.map(({ user }) => user?.login).filter(Boolean),
    reviews.map(({ user }) => user?.login.toLowerCase()).filter(Boolean),
  )
  log(
    'reviewers - existing_reviewers',
@@ -43,7 +43,7 @@ async function handleReviewers({

  const users = new Set([
    ...(await Promise.all(
      maintainers.map(async (id) => (await getUser(id)).login),
      maintainers.map(async (id) => (await getUser(id)).login.toLowerCase()),
    )),
    ...owners.filter((handle) => handle && !handle.includes('/')),
  ])
@@ -60,14 +60,14 @@ async function handleReviewers({
  const team_members = new Set(
    (await Promise.all(Array.from(teams, getTeamMembers)))
      .flat(1)
      .map(({ login }) => login),
      .map(({ login }) => login.toLowerCase()),
  )
  log('reviewers - team_members', Array.from(team_members).join(', '))

  const new_reviewers = users
    .union(team_members)
    // We can't request a review from the author.
    .difference(new Set([pull_request.user?.login]))
    .difference(new Set([pull_request.user?.login.toLowerCase()]))
  log('reviewers - new_reviewers', Array.from(new_reviewers).join(', '))

  // Filter users to repository collaborators. If they're not, they can't be requested