Tests #385
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
| # Based on github template: https://github.com/actions/starter-workflows/blob/main/ci/python-package.yml | |
| name: Tests | |
| on: | |
| schedule: | |
| - cron: '0 9 * * 1' # run every Monday at 9 AM UTC (3 am PST) | |
| push: | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| build: | |
| name: ${{ matrix.python-version }}, ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ ubuntu-latest, macos-latest, windows-latest ] | |
| python-version: ['3.12'] | |
| steps: | |
| - name: Checkout source | |
| uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - name: Fetch all Git tags | |
| run: git fetch --prune --unshallow --tags | |
| - name: Setup Micromamba | |
| uses: mamba-org/setup-micromamba@main | |
| with: | |
| environment-file: installation/environment.yml | |
| cache-environment: false | |
| cache-downloads: false | |
| # persist on the same day. | |
| # cache-environment-key: environment-${{ steps.date.outputs.date }} | |
| # cache-downloads-key: downloads-${{ steps.date.outputs.date }} | |
| create-args: >- | |
| python=${{ matrix.python-version }} | |
| init-shell: >- | |
| bash | |
| powershell | |
| - name: Conda info | |
| shell: bash -l {0} | |
| run: micromamba info | |
| - name: Install Modflow executables | |
| uses: modflowpy/install-modflow-action@v1 | |
| with: | |
| path: ~/.local/bin | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Modflow version | |
| shell: bash -l {0} | |
| run: mf6 --version | |
| - name: Install ipykernel | |
| shell: bash -l {0} | |
| run: | | |
| python -m ipykernel install --user --name pyclass --display-name "pyclass" | |
| - name: Conda list | |
| shell: bash -l {0} | |
| run: micromamba list | |
| - name: Install fonts on Linux | |
| if: runner.os == 'Linux' | |
| run: | | |
| echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | sudo debconf-set-selections | |
| sudo apt-get install ttf-mscorefonts-installer fonts-liberation | |
| sudo rm -rf ~/.cache/matplotlib | |
| - name: Set up headless display | |
| uses: pyvista/setup-headless-display-action@v4 | |
| - name: Run tests | |
| shell: bash -l {0} | |
| run: | | |
| pytest tests/test_notebooks.py -v | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |