Skip to content

Workflow file for this run

name: MODFLOW 6 continuous integration
on:
push:
branches:
- nc_winbuild2
paths-ignore:
- '**.md'
- '**.pdf'
- '**.tex'
- '**.jpg'
- '**.jpeg'
- '**.png'
- '**.bbl'
- '**.bib'
- 'doc/**.dat'
- 'doc/**.ipynb'
- 'doc/**.py'
- 'doc/**.sh'
- 'doc/**.xlsx'
- '.hpc/**'
pull_request:
branches:
- master
- develop
paths-ignore:
- '**.md'
- '**.pdf'
- '**.tex'
- '**.jpg'
- '**.jpeg'
- '**.png'
- '**.bbl'
- '**.bib'
- 'doc/**.dat'
- 'doc/**.ipynb'
- 'doc/**.py'
- 'doc/**.sh'
- 'doc/**.xlsx'
- '.hpc/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
PIXI_BETA_WARNING_OFF: true
jobs:
lint:
name: Check format
runs-on: ubuntu-latest
steps:
- name: Checkout MF6
uses: actions/checkout@v4
- name: Setup pixi
uses: prefix-dev/[email protected]
with:
pixi-version: v0.24.2
- name: Check Fortran source formatting
run: pixi run check-format
- name: Check MSVS project files
run: pixi run check-vfproj
- name: Check python lint
run: pixi run check-python-lint
- name: Check python format
run: pixi run check-python-format
- name: Check CITATION.cff
uses: dieghernan/cff-validator@v3
netcdf_test:
name: NetCDF executable testing
# needs:
# - lint
# - build
# - smoke_test
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
# os: [ ubuntu-22.04, macos-12, windows-2022 ]
os: [ windows-2022 ]
defaults:
run:
shell: bash
steps:
- name: Checkout MF6
uses: actions/checkout@v4
with:
path: modflow6
- name: Setup pixi
uses: prefix-dev/[email protected]
with:
pixi-version: v0.24.2
manifest-path: "modflow6/pixi.toml"
- name: Custom pixi install
working-directory: modflow6
run: pixi run install
- name: Install additional netcdf testing packages
working-directory: modflow6
run: pixi run pip install xugrid xarray netcdf4
- name: Test extended MF6
if: runner.os != 'Windows'
uses: ./modflow6/.github/actions/test-extended
- name: Test netcdf MF6 (Windows)
if: runner.os == 'Windows'
uses: ./modflow6/.github/actions/test-netcdf-win
- name: Upload failed test output
if: failure()
uses: actions/upload-artifact@v4
with:
name: failed-${{ matrix.os }}
path: modflow6/autotest/.failed