2022-02-13 15:15:20 -07:00
|
|
|
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")
|
|
|
|
}
|
|
|
|
|
2022-03-04 03:28:32 -07:00
|
|
|
if (labels.includes('build')) {
|
|
|
|
reviewers.add("jamessan")
|
|
|
|
}
|
|
|
|
|
2022-02-13 15:15:20 -07:00
|
|
|
if (labels.includes('ci')) {
|
|
|
|
reviewers.add("jamessan")
|
|
|
|
}
|
|
|
|
|
2022-02-14 10:35:40 -07:00
|
|
|
if (labels.includes('column')) {
|
|
|
|
reviewers.add("lewis6991")
|
|
|
|
}
|
|
|
|
|
2022-02-13 15:15:20 -07:00
|
|
|
if (labels.includes('diagnostic')) {
|
|
|
|
reviewers.add("gpanders")
|
|
|
|
}
|
|
|
|
|
2022-02-14 10:35:40 -07:00
|
|
|
if (labels.includes('diff')) {
|
|
|
|
reviewers.add("lewis6991")
|
|
|
|
}
|
|
|
|
|
2022-03-04 03:28:32 -07:00
|
|
|
if (labels.includes('dependencies')) {
|
|
|
|
reviewers.add("jamessan")
|
|
|
|
}
|
|
|
|
|
2022-02-13 15:15:20 -07:00
|
|
|
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("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)
|
|
|
|
});
|
|
|
|
}
|