Regression Testing #238
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Regression Testing | |
| on: | |
| push: | |
| pull_request: | |
| workflow_dispatch: | |
| schedule: | |
| - cron: '0 15 * * *' | |
| jobs: | |
| NVC: | |
| name: ${{ matrix.icon }}${{ matrix.name }} - NVC | |
| runs-on: ${{ matrix.image }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - {icon: "π§", name: "Ubuntu", image: "ubuntu-24.04", shell: "bash"} | |
| ## - {icon: "πͺ", name: "Windows", image: "windows-2022", shell: "powershell"} # Scripting is Bash-based | |
| - {icon: "πͺπ¨", name: "Windows", image: "windows-2022", shell: "msys2 {0}"} # Installation in Windows via MSI, but called from UCRT64. | |
| defaults: | |
| run: | |
| shell: ${{ matrix.shell }} | |
| steps: | |
| - name: β¬ Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: ${{ matrix.icon }} Setup MSYS2 for UCRT64 | |
| uses: msys2/setup-msys2@v2 | |
| if: matrix.name == 'Windows' && startsWith(matrix.shell, 'msys2') | |
| with: | |
| msystem: ucrt64 | |
| update: true | |
| - name: π§ Install NVC | |
| uses: nickg/setup-nvc-ci@v1 | |
| with: | |
| version: latest | |
| - name: π§ Run tests on Ubuntu | |
| if: matrix.name == 'Ubuntu' | |
| run: | | |
| mkdir -p temp | |
| cd temp | |
| ../scripts/NVC.sh | |
| - name: π§ Run tests on Windows + MSYS2/UCRT64 | |
| if: matrix.name == 'Windows' && startsWith(matrix.shell, 'msys2') | |
| run: | | |
| export PATH="/c/Program Files/NVC/bin:$PATH" | |
| mkdir -p temp | |
| cd temp | |
| ../scripts/NVC.sh | |
| - name: π§ Inspect Ant+JUnit Unittest Summary XML | |
| # if: matrix.name == 'Ubuntu' | |
| run: | | |
| cat temp/*.xml | |
| - name: 'π€ Upload artifact: logs' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: junit-${{ matrix.name }}-nvc | |
| include-hidden-files: true | |
| path: | | |
| temp/*.xml | |
| if-no-files-found: error | |
| retention-days: 1 | |
| PublishTestResults: | |
| uses: pyTooling/Actions/.github/workflows/PublishTestResults.yml@r5 | |
| needs: | |
| - NVC | |
| with: | |
| unittest_artifacts_pattern: "junit-*" | |
| testsuite-summary-name: "Interfaces" | |
| dorny: true | |
| # codecov: true | |
| secrets: inherit |