ci: add a spam closing workflow

This commit is contained in:
ObserverOfTime 2025-08-16 23:06:57 +03:00
parent 34ef1157a6
commit c12b4a1565
2 changed files with 67 additions and 0 deletions

38
.github/scripts/close_spam.js vendored Normal file
View file

@ -0,0 +1,38 @@
module.exports = async ({ github, context }) => {
const { data } = await github.rest.repos.getCollaboratorPermissionLevel({
...context.repo,
username: context.actor
});
if (!data.permission.includes("triage")) {
await github.log.error("Workflow called with insufficient permissions!");
return;
}
let target = context.payload.issue;
if (target) {
await github.rest.issues.update({
...context.repo,
issue_number: target.number,
state: "closed",
state_reason: "not_planned",
title: "[spam]",
body: "",
type: null,
});
} else {
target = context.payload.pull_request;
await github.rest.pulls.update({
...context.repo,
pull_number: target.number,
state: "closed",
title: "[spam]",
body: "",
});
}
await github.rest.issues.lock({
...context.repo,
issue_number: target.number,
lock_reason: "spam",
});
};