Constrained free-slip via recoverable Lagrange multiplier (dynamic topography) #540
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: test_uw3 | |
| # Build + test on every PR / push to main / development. | |
| # | |
| # Uses pixi (with the committed pixi.lock) for a deterministic, fast install | |
| # rather than micromamba + environment.yaml, which had been backtracking for | |
| # 60+ minutes on conda-forge solves and timing the runner out before tests | |
| # could start. The pixi.lock matches what local development uses, so CI now | |
| # runs against the same dependency state developers see. | |
| on: | |
| push: | |
| branches: | |
| - main | |
| - development | |
| - Quick_Start_Docs | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install pixi from lockfile | |
| uses: prefix-dev/setup-pixi@v0.9.4 | |
| with: | |
| # Use the env that matches local development for tests. | |
| # `dev` = conda-petsc + runtime + dev features (pytest, jupyter, etc.) | |
| environments: dev | |
| # Hard-fail if pixi.lock disagrees with pixi.toml — never re-solve | |
| # silently in CI; that's exactly the failure mode we're escaping. | |
| frozen: true | |
| cache: true | |
| - name: Build UW3 | |
| # `pixi run -e dev build` invokes the build task from pixi.toml, | |
| # which is `pip install . --no-build-isolation` (non-editable — | |
| # editable installs are project policy violation, see CLAUDE.md). | |
| run: pixi run -e dev build | |
| - name: Run tests | |
| run: pixi run -e dev ./scripts/test.sh --p 2 |