diff --git a/.github/workflows/PublishCoverageResults.yml b/.github/workflows/PublishCoverageResults.yml new file mode 100644 index 00000000..0550ab5a --- /dev/null +++ b/.github/workflows/PublishCoverageResults.yml @@ -0,0 +1,63 @@ +# ==================================================================================================================== # +# Authors: # +# Patrick Lehmann # +# # +# ==================================================================================================================== # +# Copyright 2020-2023 The pyTooling Authors # +# # +# Licensed under the Apache License, Version 2.0 (the "License"); # +# you may not use this file except in compliance with the License. # +# You may obtain a copy of the License at # +# # +# http://www.apache.org/licenses/LICENSE-2.0 # +# # +# Unless required by applicable law or agreed to in writing, software # +# distributed under the License is distributed on an "AS IS" BASIS, # +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # +# See the License for the specific language governing permissions and # +# limitations under the License. # +# # +# SPDX-License-Identifier: Apache-2.0 # +# ==================================================================================================================== # +name: Publish Unit Test Results + +on: + workflow_call: + inputs: + report_files: + description: 'Pattern of report files to upload. Can be a comma separated list.' + required: false + default: 'artifacts/**/*.xml' + type: string + +jobs: + PublishTestResults: + name: 📊 Publish Test Results + runs-on: ubuntu-latest + if: always() + + steps: + - name: ⏬ Checkout repository + uses: actions/checkout@v4 + + - name: Download Artifacts + uses: actions/download-artifact@v3 + with: + path: artifacts + + - name: 📊 Publish code coverage at CodeCov + if: inputs.CodeCov == true + continue-on-error: true + uses: codecov/codecov-action@v3 + with: + files: ${{ steps.getVariables.outputs.coverage_report_xml }} + flags: unittests + env_vars: PYTHON + + - name: 📉 Publish code coverage at Codacy + if: inputs.Codacy == true + continue-on-error: true + uses: codacy/codacy-coverage-reporter-action@v1 + with: + project-token: ${{ secrets.codacy_token }} + coverage-reports: ${{ steps.getVariables.outputs.coverage_report_xml }}