From b8772376129adbbb5ea04b08c4a62383bfa88d87 Mon Sep 17 00:00:00 2001 From: Dundar Göc Date: Thu, 17 Feb 2022 13:18:48 +0100 Subject: ci(reviews): move reviews.js to .github/scripts --- .github/scripts/reviews.js | 88 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 .github/scripts/reviews.js (limited to '.github/scripts') diff --git a/.github/scripts/reviews.js b/.github/scripts/reviews.js new file mode 100644 index 0000000000..25ef08be36 --- /dev/null +++ b/.github/scripts/reviews.js @@ -0,0 +1,88 @@ +module.exports = async ({github, context}) => { + const pr_data = await github.rest.pulls.get({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number + }) + const labels = pr_data.data.labels.map(e => e.name) + + const reviewers = new Set() + if (labels.includes('api')) { + reviewers.add("bfredl") + reviewers.add("gpanders") + reviewers.add("muniter") + } + + if (labels.includes('ci')) { + reviewers.add("jamessan") + } + + if (labels.includes('column')) { + reviewers.add("lewis6991") + } + + if (labels.includes('diagnostic')) { + reviewers.add("gpanders") + } + + if (labels.includes('diff')) { + reviewers.add("lewis6991") + } + + if (labels.includes('distribution')) { + reviewers.add("jamessan") + } + + if (labels.includes('documentation')) { + reviewers.add("clason") + } + + if (labels.includes('extmarks')) { + reviewers.add("bfredl") + } + + if (labels.includes('filetype')) { + reviewers.add("clason") + reviewers.add("gpanders") + } + + if (labels.includes('gui')) { + reviewers.add("glacambre") + reviewers.add("smolck") + } + + if (labels.includes('lsp')) { + reviewers.add("mfussenegger") + reviewers.add("mjlbach") + } + + if (labels.includes('treesitter')) { + reviewers.add("bfredl") + reviewers.add("vigoux") + } + + if (labels.includes('typo')) { + reviewers.add("dundargoc") + } + + if (labels.includes('ui')) { + reviewers.add("bfredl") + } + + if (labels.includes('vim-patch')) { + reviewers.add("janlazo") + reviewers.add("seandewar") + reviewers.add("zeertzjq") + } + + // Remove person that opened the PR since they can't review themselves + const pr_opener = pr_data.data.user.login + reviewers.delete(pr_opener) + + github.rest.pulls.requestReviewers({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number, + reviewers: Array.from(reviewers) + }); +} -- cgit From b842f5491fd9b3e8859318df70172ef8f4f1ef46 Mon Sep 17 00:00:00 2001 From: Dundar Göc Date: Fri, 4 Mar 2022 11:28:32 +0100 Subject: ci(reviews): update reviewers --- .github/scripts/reviews.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to '.github/scripts') diff --git a/.github/scripts/reviews.js b/.github/scripts/reviews.js index 25ef08be36..e227b62c8c 100644 --- a/.github/scripts/reviews.js +++ b/.github/scripts/reviews.js @@ -13,6 +13,10 @@ module.exports = async ({github, context}) => { reviewers.add("muniter") } + if (labels.includes('build')) { + reviewers.add("jamessan") + } + if (labels.includes('ci')) { reviewers.add("jamessan") } @@ -29,6 +33,10 @@ module.exports = async ({github, context}) => { reviewers.add("lewis6991") } + if (labels.includes('dependencies')) { + reviewers.add("jamessan") + } + if (labels.includes('distribution')) { reviewers.add("jamessan") } @@ -70,7 +78,6 @@ module.exports = async ({github, context}) => { } if (labels.includes('vim-patch')) { - reviewers.add("janlazo") reviewers.add("seandewar") reviewers.add("zeertzjq") } -- cgit From da3ef2a53801c6b4dea186000826e91de8494e1c Mon Sep 17 00:00:00 2001 From: Dundar Göc Date: Sun, 27 Mar 2022 21:48:28 +0200 Subject: ci: remove reviewers when drafting or closing a PR --- .github/scripts/remove-reviewers.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .github/scripts/remove-reviewers.js (limited to '.github/scripts') diff --git a/.github/scripts/remove-reviewers.js b/.github/scripts/remove-reviewers.js new file mode 100644 index 0000000000..631f08e57d --- /dev/null +++ b/.github/scripts/remove-reviewers.js @@ -0,0 +1,16 @@ +module.exports = async ({github, context}) => { + const requestedReviewers = await github.rest.pulls.listRequestedReviewers({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number + }); + + const reviewers = requestedReviewers.data.users.map(e => e.login) + + github.rest.pulls.removeRequestedReviewers({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number, + reviewers: reviewers + }); +} -- cgit From c671822d4da5f8b772fff7acc3eae16df714e68f Mon Sep 17 00:00:00 2001 From: Michael Lingelbach Date: Fri, 29 Apr 2022 01:48:12 -0700 Subject: ci: remove mjlbach from reviewers (#18297) --- .github/scripts/reviews.js | 1 - 1 file changed, 1 deletion(-) (limited to '.github/scripts') diff --git a/.github/scripts/reviews.js b/.github/scripts/reviews.js index e227b62c8c..6e9a829353 100644 --- a/.github/scripts/reviews.js +++ b/.github/scripts/reviews.js @@ -61,7 +61,6 @@ module.exports = async ({github, context}) => { if (labels.includes('lsp')) { reviewers.add("mfussenegger") - reviewers.add("mjlbach") } if (labels.includes('treesitter')) { -- cgit