name: Report Summary on: workflow_call: inputs: env_json: required: true type: string suites: required: true type: string description: Space-separated suite names published to git-pages gitops: required: false type: string description: 'Pipe-separated rows: component|version|status|commit_sha|repo' env: GIT_PAGES_URL: ${{ fromJson(inputs.env_json).GIT_PAGES_URL }} jobs: summary: runs-on: ubuntu-latest steps: - name: Generate report links shell: bash run: | SHA8="${GITHUB_SHA:0:8}" BASE="${GIT_PAGES_URL}/${GITHUB_REPOSITORY}/reports/${SHA8}" { echo "## Test Reports" echo "" echo "| Suite | Report |" echo "|-------|--------|" for suite in ${{ inputs.suites }}; do echo "| ${suite} | [View report](${BASE}/${suite}/) |" done } >> "${GITHUB_STEP_SUMMARY}" if [ -n "${{ inputs.gitops }}" ]; then GITEA_URL="${{ fromJson(inputs.env_json).GITEA_API_URL }}" { echo "" echo "## GitOps updates" echo "" echo "| Component | Version | Status | GitOps commit |" echo "|-----------|---------|--------|--------------|" echo '${{ inputs.gitops }}' | while IFS='|' read -r comp ver status sha repo; do [ -z "$comp" ] && continue if [ -n "$sha" ]; then echo "| $comp | $ver | $status | [link]($GITEA_URL/$repo/commit/$sha) |" else echo "| $comp | $ver | $status | — |" fi done } >> "${GITHUB_STEP_SUMMARY}" fi