Skip to content

Publish Test Results #3249

Publish Test Results

Publish Test Results #3249

name: Publish Test Results
on:
workflow_run:
workflows: ["packchk", "svdconv", "buildmgr", "projmgr", "packgen", "test_libs"]
# avoid running once merged on main branch, this should be run only on PRs
branches-ignore: ["main"]
types:
- completed
jobs:
publish-test-results:
name: Publish Test Results
runs-on: ubuntu-22.04
if: github.event.workflow_run.conclusion != 'skipped'
steps:
- name: Harden Runner
if: ${{ !github.event.repository.private }}
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: audit
- name: Download and Extract Artifacts
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
run: |
mkdir -p artifacts && cd artifacts
artifacts_url=${{ github.event.workflow_run.artifacts_url }}
gh api "$artifacts_url" -q '.artifacts[] | [.name, .archive_download_url] | @tsv' | while read artifact
do
IFS=$'\t' read name url <<< "$artifact"
if [[ $name == "Event File"* ]]; then
name="Event File"
fi
gh api $url > "$name.zip"
unzip -d "$name" "$name.zip"
done
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@170bf24d20d201b842d7a52403b73ed297e6645b # v2.18.0
with:
commit: ${{ github.event.workflow_run.head_sha }}
event_file: artifacts/Event File/event.json
report_individual_runs: true
event_name: ${{ github.event.workflow_run.event }}
files: "artifacts/**/*.xml"