Skip to content

pypi trusted publishing #707

pypi trusted publishing

pypi trusted publishing #707

Workflow file for this run

# This workflow will install Basix, FFCx, DOLFINx and run the DOLFINx and FFCx unit tests.
name: FEniCSx integration
on:
pull_request:
branches:
- main
jobs:
ffcx-tests:
name: Run FFCx tests
runs-on: ubuntu-latest
env:
CC: gcc-10
CXX: g++-10
PETSC_ARCH: linux-gnu-real-64
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: 3.12
- name: Install test dependencies
run: |
sudo apt-get install -y graphviz libgraphviz-dev ninja-build pkg-config
- name: Install UFL
run: |
pip3 install --break-system-packages .
- name: Install Basix
run: |
python3 -m pip install git+https://github.com/FEniCS/basix.git
- name: Clone FFCx
uses: actions/checkout@v4
with:
path: ./ffcx
repository: FEniCS/ffcx
ref: main
- name: Install FFCx
run: |
cd ffcx
pip install .[ci]
- name: Run FFCx unit tests
run: python3 -m pytest -n auto ffcx/test
dolfinx-tests:
name: Run DOLFINx tests
runs-on: ubuntu-latest
container: ghcr.io/fenics/test-env:current-openmpi
env:
PETSC_ARCH: linux-gnu-complex128-32
OMPI_ALLOW_RUN_AS_ROOT: 1
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
steps:
- uses: actions/checkout@v4
- name: Install UFL
run: |
pip3 install --break-system-packages .
- name: Install Basix and FFCx
run: |
python3 -m pip install --break-system-packages git+https://github.com/FEniCS/basix.git
python3 -m pip install --break-system-packages git+https://github.com/FEniCS/ffcx.git
- name: Clone DOLFINx
uses: actions/checkout@v4
with:
path: ./dolfinx
repository: FEniCS/dolfinx
ref: main
- name: Install DOLFINx
run: |
cmake -G Ninja -DCMAKE_BUILD_TYPE=Developer -B build -S dolfinx/cpp/
cmake --build build
cmake --install build
python3 -m pip install --break-system-packages -r dolfinx/python/build-requirements.txt
python3 -m pip -v install --break-system-packages --no-build-isolation --check-build-dependencies --config-settings=cmake.build-type="Developer" dolfinx/python/[ci]
- name: Run DOLFINx unit tests
run: python3 -m pytest -n auto dolfinx/python/test/unit