Skip to content

FFCx integration

FFCx integration #1945

Workflow file for this run

name: FFCx integration
# Install Basix and FFCx and run the FFCx unit tests.
on:
pull_request:
branches:
- main
push:
branches:
- "main"
merge_group:
branches:
- main
workflow_dispatch:
inputs:
ffcx_branch:
description: "FFCx branch or tag"
default: "main"
type: string
ufl_branch:
description: "UFL branch or tag"
default: "main"
type: string
jobs:
build:
name: Run FFCx tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: sudo apt-get install -y libopenblas-dev liblapack-dev graphviz libgraphviz-dev ninja-build
- name: Install UFL (default branch)
if: github.event_name != 'workflow_dispatch'
run: pip install git+https://github.com/FEniCS/ufl.git
- name: Install UFL (specified branch)
if: github.event_name == 'workflow_dispatch'
run: pip install git+https://github.com/FEniCS/ufl.git@${{ github.event.inputs.ufl_branch }}
- name: Install Basix
run: pip -v install .[ci]
- name: Get FFCx source (default branch)
if: github.event_name != 'workflow_dispatch'
uses: actions/checkout@v4
with:
path: ./ffcx
repository: FEniCS/ffcx
ref: main
- name: Get FFCx source (specified branch)
if: github.event_name == 'workflow_dispatch'
uses: actions/checkout@v4
with:
path: ./ffcx
repository: FEniCS/ffcx
ref: ${{ github.event.inputs.ffcx_branch }}
- name: Install FFCx
run: pip install ./ffcx[ci]
- name: Run FFCx tests
run: pytest -n auto --ignore=ffcx/test/test_lnodes.py ffcx/test