From 95517b25fa0e8ace447a30b79ed3235fdba89dfa Mon Sep 17 00:00:00 2001 From: Sergii Gnatiuk Date: Fri, 22 Aug 2025 15:30:39 +0300 Subject: [PATCH 1/3] custom render script --- action.yaml | 14 +++++++++++++- src/create-check-runs.js | 3 ++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/action.yaml b/action.yaml index 7234943..ce9d663 100644 --- a/action.yaml +++ b/action.yaml @@ -25,6 +25,11 @@ inputs: required: false default: 'delta-coverage' + check-run-extra-render-script: + description: 'Script to render additional info in check run.' + required: false + default: '' + outputs: badges-dir: description: 'Directory with generated badges.' @@ -95,6 +100,12 @@ runs: github-token: ${{ inputs.github-token }} script: | const createCheckRuns = require('${{ github.action_path }}/src/create-check-runs.js'); + const extraRenderScript = (view) => { + const script = ${{ inputs.check-run-extra-render-script || '(v) => ""' }}; + try { return script(view) } catch(e) { + return `Error in custom script: ${e}` + }; + } const checkRuns = await createCheckRuns({ summaryReportPath: `${{ steps.all-summaries.outputs.delta }}`, ignoreCoverageFailure: ${{ steps.check-suppress.outputs.suppress }}, @@ -102,7 +113,8 @@ runs: context: context, github: github, headSha: `${{ github.event.pull_request.head.sha || github.sha }}`, - externalId: `${{ inputs.external-id }}` + externalId: `${{ inputs.external-id }}`, + summaryExtraFun: extraRenderScript }); core.setOutput('check-runs', checkRuns); diff --git a/src/create-check-runs.js b/src/create-check-runs.js index aed5ec0..6ac7657 100644 --- a/src/create-check-runs.js +++ b/src/create-check-runs.js @@ -31,7 +31,8 @@ module.exports = async (ctx) => { const createCheckRun = async (view) => { const conclusion = computeViewConclusion(view); const viewName = capitalize(view.view); - const summary = `${readViewMarkdownReport(view)}\n\n`; + const summaryExtra = ctx.summaryExtraFun ? ctx.summaryExtraFun(view) : ''; + const summary = `${readViewMarkdownReport(view)}\n\n${summaryExtra}`; const response = await ctx.github.rest.checks.create({ owner: ctx.context.repo.owner, From 6d6a4193690c59a2eae7346ebcb7564a8682b682 Mon Sep 17 00:00:00 2001 From: Sergii Gnatiuk Date: Fri, 22 Aug 2025 15:51:25 +0300 Subject: [PATCH 2/3] custom render script --- action.yaml | 2 +- src/create-check-runs.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/action.yaml b/action.yaml index ce9d663..998eb93 100644 --- a/action.yaml +++ b/action.yaml @@ -105,7 +105,7 @@ runs: try { return script(view) } catch(e) { return `Error in custom script: ${e}` }; - } + }; const checkRuns = await createCheckRuns({ summaryReportPath: `${{ steps.all-summaries.outputs.delta }}`, ignoreCoverageFailure: ${{ steps.check-suppress.outputs.suppress }}, diff --git a/src/create-check-runs.js b/src/create-check-runs.js index 6ac7657..67b05e0 100644 --- a/src/create-check-runs.js +++ b/src/create-check-runs.js @@ -32,7 +32,7 @@ module.exports = async (ctx) => { const conclusion = computeViewConclusion(view); const viewName = capitalize(view.view); const summaryExtra = ctx.summaryExtraFun ? ctx.summaryExtraFun(view) : ''; - const summary = `${readViewMarkdownReport(view)}\n\n${summaryExtra}`; + const summary = `${readViewMarkdownReport(view)}\n\n\n${summaryExtra}`; const response = await ctx.github.rest.checks.create({ owner: ctx.context.repo.owner, From 085916633935d3a30f85bd9786cd8915270567b6 Mon Sep 17 00:00:00 2001 From: Sergii Gnatiuk Date: Fri, 22 Aug 2025 15:52:13 +0300 Subject: [PATCH 3/3] custom render script --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ee94de5..a14843c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Delta Coverage Action +## 1.1 + +- Added custom script to generate extra check run content + ## 1.0 - Now the action generates coverage badges for each test view.