Test on Ubuntu 25.10 #45
Workflow file for this run
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: test-cells-ubuntu | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| branches: | |
| - "**" | |
| jobs: | |
| test-cells-ubuntu: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| image: ["ubuntu:22.04", "ubuntu:24.04", "ubuntu:25.10"] | |
| container: | |
| image: ${{ matrix.image }} | |
| concurrency: | |
| group: test-cells-ubuntu-${{ github.ref }}-${{ matrix.image }} | |
| cancel-in-progress: true | |
| defaults: | |
| run: | |
| shell: bash -el {0} # -l needed to activate pipx | |
| steps: | |
| - name: Install git | |
| run: | | |
| apt-get update | |
| apt-get install -y git | |
| - name: Checkout | |
| uses: actions/checkout@v6 | |
| - name: Set git safe directory | |
| run: | | |
| git config --global --add safe.directory $PWD | |
| - name: Get system VTK version | |
| run: | | |
| vtk_ver= | |
| for candidate in $(seq 7 99); do | |
| vtk_pkg="$(apt-cache search --names-only ^libvtk${candidate}-dev$)" | |
| if [ -n "${vtk_pkg}" ]; then | |
| vtk_ver="${candidate}" | |
| break | |
| fi | |
| done | |
| echo "VTK version: ${vtk_ver}" | |
| echo "VTK_VERSION=${vtk_ver}" >> $GITHUB_ENV | |
| - name: Install system dependencies | |
| run: | | |
| export DEBIAN_FRONTEND=noninteractive | |
| apt-get install -y \ | |
| castxml \ | |
| clang \ | |
| cmake \ | |
| libboost-all-dev \ | |
| libpetsc-real-dev \ | |
| libvtk${{ env.VTK_VERSION }}-dev \ | |
| mpi-default-bin \ | |
| mpi-default-dev \ | |
| pipx \ | |
| python3-mpi4py \ | |
| python3-petsc4py-real \ | |
| python3-pip \ | |
| python3-vtk${{ env.VTK_VERSION }} | |
| pipx ensurepath | |
| - name: Check installed package versions | |
| run: | | |
| dpkg-query -W \ | |
| castxml \ | |
| clang \ | |
| cmake \ | |
| git \ | |
| libboost-all-dev \ | |
| libpetsc-real-dev \ | |
| libvtk${{ env.VTK_VERSION }}-dev \ | |
| mpi-default-bin \ | |
| mpi-default-dev \ | |
| pipx \ | |
| python3-mpi4py \ | |
| python3-petsc4py-real \ | |
| python3-pip \ | |
| python3-vtk${{ env.VTK_VERSION }} | |
| - name: Install cppwg | |
| run: pipx install . | |
| - name: Configure | |
| run: | | |
| mkdir build && cd build | |
| cmake .. | |
| working-directory: examples/cells | |
| - name: Regenerate wrappers | |
| run: | | |
| rm -rf dynamic/wrappers | |
| cd build | |
| make pycells_wrappers | |
| working-directory: examples/cells | |
| - name: Check for changes | |
| run: | | |
| git diff --exit-code dynamic/wrappers | |
| grep "Unknown class" build/cppwg.log | |
| working-directory: examples/cells | |
| - name: Create build env | |
| run: | | |
| python3 -m venv --system-site-packages .venv | |
| . .venv/bin/activate && \ | |
| python3 -m pip install --upgrade pip | |
| working-directory: examples/cells | |
| - name: Build | |
| run: | | |
| . .venv/bin/activate && \ | |
| python3 -m pip install -v . | |
| working-directory: examples/cells | |
| - name: Test | |
| run: | | |
| . .venv/bin/activate && \ | |
| python3 -m unittest discover tests | |
| working-directory: examples/cells |