From 9e4a99b78cc8c39488be46d47ef770739dc35e40 Mon Sep 17 00:00:00 2001 From: Kaiyi Li Date: Fri, 28 Jul 2023 20:04:03 -0700 Subject: [PATCH] Allow post the report to job summary --- action.yml | 4 ++++ dist/main.cjs | 42 ++++++++++++++++++++++++++++-------------- src/index.js | 42 ++++++++++++++++++++++++++++-------------- 3 files changed, 60 insertions(+), 28 deletions(-) diff --git a/action.yml b/action.yml index de9400b1..dfa442bd 100644 --- a/action.yml +++ b/action.yml @@ -27,6 +27,10 @@ inputs: description: Set working directory if project is not in root folder required: false default: "./" + post-to: + description: Post the coverage report to either "comment" or "job-summary" + required: false + default: "comment" title: description: Title to add to the comment required: false diff --git a/dist/main.cjs b/dist/main.cjs index 180453f7..c9e662b1 100644 --- a/dist/main.cjs +++ b/dist/main.cjs @@ -110984,6 +110984,7 @@ async function main() { core.getInput("filter-changed-files").toLowerCase() === "true"; const shouldDeleteOldComments = core.getInput("delete-old-comments").toLowerCase() === "true"; + const postTo = core.getInput("post-to").toLowerCase(); const title = core.getInput("title"); const raw = await require$$0$1.promises.readFile(lcovFile, "utf-8").catch(err => null); @@ -111030,20 +111031,33 @@ async function main() { await deleteOldComments(githubClient, options, context); } - if (context.eventName === "pull_request" || context.eventName === "pull_request_target") { - await githubClient.issues.createComment({ - repo: context.repo.repo, - owner: context.repo.owner, - issue_number: context.payload.pull_request.number, - body: body, - }); - } else if (context.eventName === "push") { - await githubClient.repos.createCommitComment({ - repo: context.repo.repo, - owner: context.repo.owner, - commit_sha: options.commit, - body: body, - }); + switch (postTo) { + case "comment": + if ( + context.eventName === "pull_request" || + context.eventName === "pull_request_target" + ) { + await githubClient.issues.createComment({ + repo: context.repo.repo, + owner: context.repo.owner, + issue_number: context.payload.pull_request.number, + body: body, + }); + } else if (context.eventName === "push") { + await githubClient.repos.createCommitComment({ + repo: context.repo.repo, + owner: context.repo.owner, + commit_sha: options.commit, + body: body, + }); + } + break + case "job-summary": + core.summary.addRaw(body); + await core.summary.write(); + break + default: + core.warning(`Unknown post-to value: '${postTo}'`); } } diff --git a/src/index.js b/src/index.js index 7304644b..76997cc3 100644 --- a/src/index.js +++ b/src/index.js @@ -22,6 +22,7 @@ async function main() { core.getInput("filter-changed-files").toLowerCase() === "true" const shouldDeleteOldComments = core.getInput("delete-old-comments").toLowerCase() === "true" + const postTo = core.getInput("post-to").toLowerCase() const title = core.getInput("title") const raw = await fs.readFile(lcovFile, "utf-8").catch(err => null) @@ -68,20 +69,33 @@ async function main() { await deleteOldComments(githubClient, options, context) } - if (context.eventName === "pull_request" || context.eventName === "pull_request_target") { - await githubClient.issues.createComment({ - repo: context.repo.repo, - owner: context.repo.owner, - issue_number: context.payload.pull_request.number, - body: body, - }) - } else if (context.eventName === "push") { - await githubClient.repos.createCommitComment({ - repo: context.repo.repo, - owner: context.repo.owner, - commit_sha: options.commit, - body: body, - }) + switch (postTo) { + case "comment": + if ( + context.eventName === "pull_request" || + context.eventName === "pull_request_target" + ) { + await githubClient.issues.createComment({ + repo: context.repo.repo, + owner: context.repo.owner, + issue_number: context.payload.pull_request.number, + body: body, + }) + } else if (context.eventName === "push") { + await githubClient.repos.createCommitComment({ + repo: context.repo.repo, + owner: context.repo.owner, + commit_sha: options.commit, + body: body, + }) + } + break + case "job-summary": + core.summary.addRaw(body) + await core.summary.write() + break + default: + core.warning(`Unknown post-to value: '${postTo}'`) } }