Compare commits

..

4 Commits

Author SHA1 Message Date
Patrick Lehmann
d6342484cd v5.4.0 2025-08-29 22:14:18 +02:00
Patrick Lehmann
ba3d82668e Allow configuration of JUnit dialects. 2025-08-29 21:57:36 +02:00
Patrick Lehmann
4b0b103c5f v5.3.0 2025-08-29 07:49:24 +02:00
Patrick Lehmann
ba6f55dd57 Support cross-repository pull request runs from forks. 2025-08-28 22:36:35 +02:00
2 changed files with 29 additions and 5 deletions

View File

@@ -103,7 +103,7 @@ jobs:
version: ${{ steps.Classify.outputs.version || steps.FindPullRequest.outputs.pr_version }}
# release_version: ${{ steps.FindPullRequest.outputs.release_version }}
pr_title: ${{ steps.FindPullRequest.outputs.pr_title }}
pr_number: ${{ steps.FindPullRequest.outputs.pr_number }}
pr_number: ${{ steps.Classify.outputs.pr_number || steps.FindPullRequest.outputs.pr_number }}
steps:
- name: ⏬ Checkout repository
@@ -144,6 +144,7 @@ jobs:
ref_kind="unknown"
branch=""
tag=""
pr_number=""
version=""
if [[ "${ref:0:11}" == "refs/heads/" ]]; then
@@ -225,6 +226,13 @@ jobs:
printf "::error title=RexExpCheck::Tag name '%s' doesn't conform to regexp '%s' nor '%s'.\n" "${tag}" "${NIGHTLY_TAG_PATTERN}" "${RELEASE_TAG_PATTERN}"
exit 1
fi
elif [[ "${ref:0:10}" == "refs/pull/" ]]; then
ref_kind="pullrequest"
pr_number=${ref:11}
pr_number=${pr_number%%/*}
printf "Pull Request check:\n"
printf " Number: %s\n" "${pr_number}"
else
printf "${ANSI_LIGHT_RED}Unknown Git reference '%s'.${ANSI_NOCOLOR}\n" "${{ github.ref }}"
printf "::error title=Classify Commit::Unknown Git reference '%s'.\n" "${{ github.ref }}"
@@ -243,6 +251,7 @@ jobs:
ref_kind=${ref_kind}
branch=${branch}
tag=${tag}
pr_number=${pr_number}
version=${version}
EOF
@@ -327,8 +336,10 @@ jobs:
printf "ref_kind: %s\n" "${{ steps.Classify.outputs.ref_kind }}"
printf "branch: %s\n" "${{ steps.Classify.outputs.branch }}"
printf "tag: %s\n" "${{ steps.Classify.outputs.tag }}"
printf "version from tag: %s\n" "${{ steps.Classify.outputs.version }}"
printf "version from pr: %s\n" "${{ steps.FindPullRequest.outputs.pr_version }}"
printf "version: %s\n" "${{ steps.Classify.outputs.version || steps.FindPullRequest.outputs.pr_version }}"
printf " from tag: %s\n" "${{ steps.Classify.outputs.version }}"
printf " from pr: %s\n" "${{ steps.FindPullRequest.outputs.pr_version }}"
printf "pr title: %s\n" "${{ steps.FindPullRequest.outputs.pr_title }}"
printf "pr number: %s\n" "${{ steps.FindPullRequest.outputs.pr_number }}"
printf "pr number: %s\n" "${{ steps.Classify.outputs.pr_number || steps.FindPullRequest.outputs.pr_number }}"
printf " from merge: %s\n" "${{ steps.Classify.outputs.pr_number }}"
printf " from pr: %s\n" "${{ steps.FindPullRequest.outputs.pr_number }}"

View File

@@ -44,6 +44,16 @@ on:
required: false
default: ''
type: string
merge-input-dialect:
description: 'JUnit dialect used to load and parse inputs for merging.'
required: false
default: 'pyTest-JUnit'
type: string
merge-output-dialect:
description: 'JUnit dialect used for writing the merged report.'
required: false
default: 'pyTest-JUnit'
type: string
additional_merge_args:
description: 'Additional merging arguments.'
required: false
@@ -116,7 +126,10 @@ jobs:
- name: 🔁 Merge JUnit Unit Test Summaries
run: |
pyedaa-reports -v unittest "--name=${{ inputs.testsuite-summary-name }}" "--merge=pyTest-JUnit:junit/*.xml" ${{ inputs.additional_merge_args }} "--output=pyTest-JUnit:${{ inputs.merged_junit_filename }}"
if [[ -n "${{ inputs.testsuite-summary-name }}" ]]; then
name="\"--name=${{ inputs.testsuite-summary-name }}\""
fi
pyedaa-reports -v unittest $name "--merge=${{ inputs.merge-input-dialect }}:junit/*.xml" ${{ inputs.additional_merge_args }} "--output=${{ inputs.merge-output-dialect }}:${{ inputs.merged_junit_filename }}"
printf "%s\n" "cat ${{ inputs.merged_junit_filename }}"
cat ${{ inputs.merged_junit_filename }}