Skip to content

Use the accessed sub-element's degree for indexed mixed-element components #1761

Use the accessed sub-element's degree for indexed mixed-element components

Use the accessed sub-element's degree for indexed mixed-element components #1761

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
push:
branches:
- release
tags: "**"
# Weekly build on Mondays at 8 am
schedule:
- cron: "0 8 * * 1"
jobs:
ffcx-tests:
name: Run FFCx tests
runs-on: ubuntu-24.04
env:
PETSC_ARCH: linux-gnu-real-64
steps:
- uses: actions/checkout@v7
- name: Load environment variables
run: cat .github/workflows/fenicsx-refs.env >> $GITHUB_ENV
- name: Set up Python
uses: actions/setup-python@v7
with:
python-version: 3.12
- name: Install test dependencies
run: |
sudo apt-get install -y graphviz libgraphviz-dev ninja-build pkg-config libblas-dev liblapack-dev
- name: Install UFL
run: |
pip3 install --break-system-packages .
- name: Install Basix
run: |
python3 -m pip install git+https://github.com/${{ env.basix_repository }}.git@${{ env.basix_ref }}
- name: Clone FFCx
uses: actions/checkout@v7
with:
path: ./ffcx
repository: ${{ env.ffcx_repository }}
ref: ${{ env.ffcx_ref }}
- name: Install FFCx
run: |
cd ffcx
pip install .[ci]
- name: Run FFCx unit tests
run: python3 -m pytest -n auto ffcx/test
- name: Run FFCx demos
run: python3 -m pytest -n auto ffcx/demo/test_demos.py
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@v7
- name: Load environment variables
run: cat .github/workflows/fenicsx-refs.env >> $GITHUB_ENV
- 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/${{ env.basix_repository }}.git@${{ env.basix_ref }}
python3 -m pip install --break-system-packages git+https://github.com/${{ env.ffcx_repository }}.git@${{ env.ffcx_ref }}
- name: Clone DOLFINx
uses: actions/checkout@v7
with:
path: ./dolfinx
repository: ${{ env.dolfinx_repository }}
ref: ${{ env.dolfinx_ref }}
- 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 scikit-build-core
cd dolfinx/python
python3 -m scikit_build_core.build requires | python -c "import sys, json; print(' '.join(json.load(sys.stdin)))" | xargs pip install
python3 -m pip -v install --break-system-packages --group pyproject.toml:ci --no-build-isolation --check-build-dependencies --config-settings=cmake.build-type="Developer" .
- name: Run DOLFINx unit tests
run: python3 -m pytest -n auto dolfinx/python/test/unit