mirror of
https://github.com/DIYgod/RSSHub.git
synced 2025-12-06 21:18:57 +08:00
chore: fix test route in issue command
This commit is contained in:
4
.github/workflows/docker-test-cont.yml
vendored
4
.github/workflows/docker-test-cont.yml
vendored
@@ -43,9 +43,11 @@ jobs:
|
|||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
script: |
|
script: |
|
||||||
const PR = JSON.parse(process.env.PULL_REQUEST)
|
const PR = JSON.parse(process.env.PULL_REQUEST)
|
||||||
|
const body = PR.body
|
||||||
const number = PR.number
|
const number = PR.number
|
||||||
|
const sender = PR.user.login
|
||||||
const { default: identify } = await import('${{ github.workspace }}/scripts/workflow/test-route/identify.mjs')
|
const { default: identify } = await import('${{ github.workspace }}/scripts/workflow/test-route/identify.mjs')
|
||||||
return identify({ github, context, core }, number)
|
return identify({ github, context, core }, body, number, sender)
|
||||||
|
|
||||||
- name: Fetch Docker image
|
- name: Fetch Docker image
|
||||||
if: (env.TEST_CONTINUE)
|
if: (env.TEST_CONTINUE)
|
||||||
|
|||||||
@@ -2,7 +2,15 @@ const noFound = 'Auto: Route No Found';
|
|||||||
const testFailed = 'Auto: Route Test Failed';
|
const testFailed = 'Auto: Route Test Failed';
|
||||||
const allowedUser = new Set(['dependabot[bot]', 'pull[bot]']); // dependabot and downstream PR requested by pull[bot]
|
const allowedUser = new Set(['dependabot[bot]', 'pull[bot]']); // dependabot and downstream PR requested by pull[bot]
|
||||||
|
|
||||||
export default async function identify({ github, context, core }, number) {
|
export default async function identify({ github, context, core }, body, number, sender) {
|
||||||
|
core.debug(`sender: ${sender}`);
|
||||||
|
core.debug(`body: ${body}`);
|
||||||
|
// Remove all HTML comments before performing the match
|
||||||
|
const bodyNoCmts = body?.replaceAll(/<!--[\S\s]*?-->/g, '');
|
||||||
|
const m = bodyNoCmts?.match(/```routes\s+([\S\s]*?)```/);
|
||||||
|
core.debug(`match: ${m}`);
|
||||||
|
let routes = null;
|
||||||
|
|
||||||
const issueFacts = {
|
const issueFacts = {
|
||||||
owner: context.repo.owner,
|
owner: context.repo.owner,
|
||||||
repo: context.repo.repo,
|
repo: context.repo.repo,
|
||||||
@@ -13,22 +21,13 @@ export default async function identify({ github, context, core }, number) {
|
|||||||
repo: context.repo.repo,
|
repo: context.repo.repo,
|
||||||
pull_number: number,
|
pull_number: number,
|
||||||
};
|
};
|
||||||
const { data: pr } = await github.rest.issues
|
const { data: issue } = await github.rest.issues
|
||||||
.get({
|
.get({
|
||||||
...issueFacts,
|
...issueFacts,
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
core.warning(error);
|
core.warning(error);
|
||||||
});
|
});
|
||||||
const sender = pr.user.login;
|
|
||||||
const body = pr.body;
|
|
||||||
core.debug(`sender: ${sender}`);
|
|
||||||
core.debug(`body: ${body}`);
|
|
||||||
// Remove all HTML comments before performing the match
|
|
||||||
const bodyNoCmts = body?.replaceAll(/<!--[\S\s]*?-->/g, '');
|
|
||||||
const m = bodyNoCmts?.match(/```routes\s+([\S\s]*?)```/);
|
|
||||||
core.debug(`match: ${m}`);
|
|
||||||
let routes = null;
|
|
||||||
|
|
||||||
const addLabels = (labels) =>
|
const addLabels = (labels) =>
|
||||||
github.rest.issues
|
github.rest.issues
|
||||||
@@ -78,11 +77,11 @@ export default async function identify({ github, context, core }, number) {
|
|||||||
路由测试失败,请确认评论部分符合格式规范,详情请检查 [日志](${logUrl})。`);
|
路由测试失败,请确认评论部分符合格式规范,详情请检查 [日志](${logUrl})。`);
|
||||||
};
|
};
|
||||||
|
|
||||||
if (pr.pull_request) {
|
if (issue.pull_request) {
|
||||||
if (pr.state === 'closed') {
|
if (issue.state === 'closed') {
|
||||||
await updatePrState('open');
|
await updatePrState('open');
|
||||||
}
|
}
|
||||||
if (pr.labels.some((e) => e.name === testFailed)) {
|
if (issue.labels.some((e) => e.name === testFailed)) {
|
||||||
await removeLabel(testFailed);
|
await removeLabel(testFailed);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user