Skip to content

Running the Firedrake test suite with different branches for subpackages

Connor Ward edited this page Oct 13, 2023 · 3 revisions
  1. Create and check out a new Firedrake branch:
    $ cd firedrake/src/firedrake
    $ git checkout master
    $ git pull
    $ git checkout -b check-my-subpackage-changes
    
  2. Modify the firedrake-install line in firedrake/.github/workflows/build.yml to include the argument --package-branch <subpackage> <branch> (e.g. --package-branch tsfc add-new-feature). Note that these branches must exist on the main package repository. Branches in forked repositories will not be found. Note that if PETSc is the repository getting tested then additional steps are required (see below).
  3. Commit and push this change.
  4. Create a draft pull request on the Firedrake repository for this branch. Be sure to call the pull request something like "DO NOT MERGE Test new TSFC feature" or similar (example).

Testing PETSc branches

By default we do not recompile PETSc when the test suite is run. To force it to rebuild (and for --package-branch petsc <branch> to be respected) one needs to make additional modifications to the build.yml file:

  • Delete the line --honour-petsc-dir \ from the arguments to firedrake-install.
  • Make sure to unset PETSC_DIR PETSC_ARCH SLEPC_DIR for each step.

An example can be found here.

Home

Building locally
Tips

Install Frequently Asked Questions

Running on HPC

Users

Developers Notes

Minutes and agenda of Firedrake meetings


Policies and procedures

Gravity wave scaling

Merge Complex Sprint

Reading Group

Firedrake 2021 Planning Meetings
Clone this wiki locally