mirror of
https://github.com/DIYgod/RSSHub.git
synced 2025-12-03 02:28:23 +08:00
51 lines
1.4 KiB
JavaScript
51 lines
1.4 KiB
JavaScript
const noFound = 'Auto: Route No Found';
|
|
|
|
|
|
module.exports = ({github, context, core}, body, number) => {
|
|
core.debug(`body: ${body}`);
|
|
const m = body.match(/```routes\r\n((.|\r\n)*)```/);
|
|
core.debug(`match: ${m}`);
|
|
let res = null;
|
|
|
|
const removeLabel = () => {
|
|
github.issues.removeLabel({
|
|
issue_number: number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
name: noFound
|
|
}).catch(() => {});
|
|
};
|
|
|
|
if (m && m[1]) {
|
|
res = m[1].trim().split("\r\n");
|
|
core.info(`routes detected: ${res}`);
|
|
|
|
if (res.length > 0 && res[0] === "NOROUTE") {
|
|
core.info("PR stated no route, passing");
|
|
removeLabel();
|
|
github.issues.addLabels({
|
|
issue_number: number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
labels: ['Auto: No Route Needed']
|
|
});
|
|
|
|
return;
|
|
} else if (res.length > 0) {
|
|
core.exportVariable('TEST_CONTINUE', true);
|
|
removeLabel();
|
|
return res;
|
|
}
|
|
}
|
|
|
|
core.info("seems no route found, failing");
|
|
|
|
github.issues.addLabels({
|
|
issue_number: number,
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
labels: [noFound]
|
|
});
|
|
|
|
throw "Please follow the PR rules: failed to detect route";
|
|
}; |