2023-05-30 11:39:25 -07:00
|
|
|
module.exports = async ({ github, context }) => {
|
2022-02-13 15:15:20 -07:00
|
|
|
const pr_data = await github.rest.pulls.get({
|
|
|
|
owner: context.repo.owner,
|
|
|
|
repo: context.repo.repo,
|
2023-05-30 11:39:25 -07:00
|
|
|
pull_number: context.issue.number,
|
|
|
|
});
|
|
|
|
const labels = pr_data.data.labels.map((e) => e.name);
|
|
|
|
const reviewers = new Set();
|
2023-05-30 11:42:49 -07:00
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("api")) {
|
|
|
|
reviewers.add("bfredl");
|
2023-05-30 11:42:49 -07:00
|
|
|
reviewers.add("famiu");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("build")) {
|
|
|
|
reviewers.add("dundargoc");
|
|
|
|
reviewers.add("jamessan");
|
|
|
|
reviewers.add("justinmk");
|
2022-03-04 03:28:32 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("ci")) {
|
|
|
|
reviewers.add("dundargoc");
|
|
|
|
reviewers.add("jamessan");
|
|
|
|
reviewers.add("justinmk");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("column")) {
|
|
|
|
reviewers.add("lewis6991");
|
2022-02-14 10:35:40 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("dependencies")) {
|
|
|
|
reviewers.add("jamessan");
|
2022-11-30 06:19:11 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("diagnostic")) {
|
|
|
|
reviewers.add("gpanders");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("diff")) {
|
|
|
|
reviewers.add("lewis6991");
|
2022-02-14 10:35:40 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("distribution")) {
|
|
|
|
reviewers.add("jamessan");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("documentation")) {
|
|
|
|
reviewers.add("clason");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("extmarks")) {
|
|
|
|
reviewers.add("bfredl");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("filetype")) {
|
|
|
|
reviewers.add("clason");
|
|
|
|
reviewers.add("gpanders");
|
|
|
|
reviewers.add("smjonas");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("lsp")) {
|
|
|
|
reviewers.add("folke");
|
|
|
|
reviewers.add("glepnir");
|
|
|
|
reviewers.add("mfussenegger");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("platform:nix")) {
|
|
|
|
reviewers.add("teto");
|
2022-12-28 07:19:23 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("project-management")) {
|
|
|
|
reviewers.add("bfredl");
|
|
|
|
reviewers.add("justinmk");
|
2022-11-30 06:19:11 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:42:49 -07:00
|
|
|
if (labels.includes("statusline")) {
|
|
|
|
reviewers.add("famiu");
|
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("test")) {
|
|
|
|
reviewers.add("justinmk");
|
2022-11-30 06:19:11 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("treesitter")) {
|
|
|
|
reviewers.add("bfredl");
|
|
|
|
reviewers.add("clason");
|
|
|
|
reviewers.add("lewis6991");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("typo")) {
|
|
|
|
reviewers.add("dundargoc");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("ui")) {
|
|
|
|
reviewers.add("bfredl");
|
2023-05-30 11:42:49 -07:00
|
|
|
reviewers.add("famiu");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
2023-05-30 11:39:25 -07:00
|
|
|
if (labels.includes("vim-patch")) {
|
|
|
|
reviewers.add("seandewar");
|
|
|
|
reviewers.add("zeertzjq");
|
2022-02-13 15:15:20 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
// Remove person that opened the PR since they can't review themselves
|
2023-05-30 11:39:25 -07:00
|
|
|
const pr_opener = pr_data.data.user.login;
|
|
|
|
reviewers.delete(pr_opener);
|
2022-02-13 15:15:20 -07:00
|
|
|
|
|
|
|
github.rest.pulls.requestReviewers({
|
|
|
|
owner: context.repo.owner,
|
|
|
|
repo: context.repo.repo,
|
|
|
|
pull_number: context.issue.number,
|
2022-12-15 12:40:30 -07:00
|
|
|
reviewers: Array.from(reviewers),
|
2022-02-13 15:15:20 -07:00
|
|
|
});
|
2023-05-30 11:39:25 -07:00
|
|
|
};
|