pymake continuous integration #467
This file contains 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: pymake continuous integration | |
on: | |
schedule: | |
- cron: '0 3 * * 3' # run at 3 AM UTC every Wednesday | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: | |
- master | |
jobs: | |
pymakeCI-os-intel: | |
name: pymake CI intel on different OSs | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest, windows-2019] | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v3 | |
- name: Setup Intel OneAPI Compilers | |
uses: modflowpy/install-intelfortran-action@v1 | |
- name: Setup Graphviz | |
if: runner.os == 'Linux' | |
uses: ts-graphviz/setup-graphviz@v1 | |
- name: Set up Python | |
uses: actions/[email protected] | |
with: | |
python-version: "3.10" | |
- name: Install python packages | |
run: | | |
.github/common/install-python.sh | |
- name: Download examples for pytest runs | |
run: | | |
.github/common/download-examples.sh | |
- name: test on Linux | |
if: runner.os == 'Linux' | |
run: | | |
pytest -v -n=auto --dist=loadfile -m="base or regression" --durations=0 --cov=pymake --cov-report=xml autotest/ | |
- name: test on MacOS | |
if: runner.os == 'macOS' | |
run: | | |
pytest -v -n=auto --dist=loadfile -m="base" --durations=0 --cov=pymake --cov-report=xml autotest/ | |
- name: test on Windows | |
if: runner.os == 'Windows' | |
shell: cmd | |
run: | | |
pytest -v -m="base" --durations=0 --cov=pymake --cov-report=xml autotest/ | |
- name: Print coverage report before upload | |
run: | | |
coverage report | |
- name: Upload coverage to Codecov | |
uses: codecov/[email protected] | |
with: | |
file: ./coverage.xml |