Skip to content

Test on Ubuntu 25.10 #47

Test on Ubuntu 25.10

Test on Ubuntu 25.10 #47

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