diff --git a/.github/workflows/build-and-test-macos.yml b/.github/workflows/build-and-test-macos.yml index 4caa9acdf..1d4c21992 100644 --- a/.github/workflows/build-and-test-macos.yml +++ b/.github/workflows/build-and-test-macos.yml @@ -35,7 +35,7 @@ jobs: } ] runs-on: ${{ matrix.host.base }} - name: vt-tv build and test (${{ matrix.host.base }}-${{ matrix.host.compiler.cc }}, vtk-${{ matrix.host.vtk }}, py[${{ join(matrix.host.python, ', ') }}]) + name: vt-tv build and test (${{ matrix.host.base }}, ${{ matrix.host.compiler.cc }}, vtk-${{ matrix.host.vtk }}, py[${{ join(matrix.host.python, ', ') }}]) env: VTK_SRC_DIR: /opt/src/vtk VTK_BUILD_DIR: /opt/build/vtk diff --git a/.github/workflows/build-and-test-ubuntu.yml b/.github/workflows/build-and-test-ubuntu.yml index 7a2895230..8b2792cd5 100644 --- a/.github/workflows/build-and-test-ubuntu.yml +++ b/.github/workflows/build-and-test-ubuntu.yml @@ -14,18 +14,43 @@ jobs: strategy: fail-fast: false matrix: - image: - - ubuntu_22.04-gcc_11-vtk_9.2.2-py_3.all - - ubuntu_22.04-clang_11-vtk_9.2.2-py_3.all - - ubuntu_22.04-gcc_12-vtk_9.3.0-py_3.all - - ubuntu_24.04-gcc_13-vtk_9.3.1-py_3.all + host: [ + { + base: ubuntu-22.04, + compiler: { cc: gcc-11 }, + python: ['3.8', '3.9', '3.10', '3.11', '3.12'], + vtk: '9.2.2', + image: ubuntu_22.04-gcc_11-vtk_9.2.2-py_3.all + }, + { + base: ubuntu-22.04, + compiler: { cc: clang-11 }, + python: ['3.8', '3.9', '3.10', '3.11', '3.12'], + vtk: '9.2.2', + image: ubuntu_22.04-clang_11-vtk_9.2.2-py_3.all + }, + { + base: ubuntu-22.04, + compiler: { cc: gcc-12 }, + python: ['3.8', '3.9', '3.10', '3.11', '3.12'], + vtk: '9.3.0', + image: ubuntu_22.04-gcc_12-vtk_9.3.0-py_3.all + }, + { + base: ubuntu-24.04, + compiler: { cc: gcc-13 }, + python: ['3.8', '3.9', '3.10', '3.11', '3.12'], + vtk: '9.3.1', + image: ubuntu_24.04-gcc_13-vtk_9.3.1-py_3.all + } + ] env: OUTPUT_DIR: '/tmp/artifacts' VT_TV_TESTS_ENABLED: 'ON' - VT_TV_COVERAGE_ENABLED: ${{ matrix.image == 'ubuntu_22.04-gcc_12-vtk_9.3.0-py_3.all' && 'ON' || 'OFF' }} # Coverage only with main test image + VT_TV_COVERAGE_ENABLED: ${{ matrix.host.image == 'ubuntu_22.04-gcc_12-vtk_9.3.0-py_3.all' && 'ON' || 'OFF' }} # Coverage only with main test image DOCKER_REPOSITORY: lifflander1/vt DOCKER_TAG: ~ - name: vt-tv build and test + name: vt-tv build and test (${{ matrix.host.base }}, ${{ matrix.host.compiler.cc }}, vtk-${{ matrix.host.vtk }}, py[${{ join(matrix.host.python, ', ') }}]) steps: - uses: actions/checkout@v4 @@ -56,7 +81,7 @@ jobs: context: . file: ./ci/docker/build-and-test-ubuntu.dockerfile build-args: | - BASE_IMAGE=${{ env.DOCKER_REPOSITORY }}:${{ matrix.image }} + BASE_IMAGE=${{ env.DOCKER_REPOSITORY }}:${{ matrix.host.image }} VT_TV_TESTS_ENABLED=${{ env.VT_TV_TESTS_ENABLED }} VT_TV_COVERAGE_ENABLED=${{ env.VT_TV_COVERAGE_ENABLED }} outputs: type=local,dest=${{ env.OUTPUT_DIR }} @@ -65,7 +90,7 @@ jobs: uses: actions/upload-artifact@v4 if: always() with: - name: vt-tv-Artifacts-${{ matrix.image }} + name: vt-tv-Artifacts-${{ matrix.host.image }} path: ${{ env.OUTPUT_DIR }} - name: Unit tests