Skip to content

Switchable numpy backends #299

Switchable numpy backends

Switchable numpy backends #299

Workflow file for this run

name: CI
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build:
name: python ${{ matrix.python-version }} on ${{ matrix.os }} with ${{ matrix.backend }} backend
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- {python-version: "3.9", backend: "numpy", os: ubuntu-latest, documentation: True, coverage: True, minimal: True, full: True}
- {python-version: "3.10", backend: "numpy", os: ubuntu-latest, documentation: False, coverage: True, minimal: True, full: True}
- {python-version: "3.11", backend: "numpy", os: ubuntu-latest, documentation: False, coverage: True, minimal: True, full: True}
- {python-version: "3.12", backend: "numpy", os: ubuntu-latest, documentation: False, coverage: False, minimal: True, full: True}
- {python-version: "3.12", backend: "tensorflow", os: ubuntu-latest, documentation: False, coverage: False, minimal: True, full: False}
- {python-version: "3.12", backend: "jax", os: ubuntu-latest, documentation: False, coverage: False, minimal: True, full: False}
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
with:
key: ${{ github.ref }}
path: .cache
- name: Set up python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Upgrade pip
run: |
python -m pip install --upgrade pip
- name: Install ebcc
run: |
python -m pip install wheel
python -m pip install .[dev,numpy,jax,tensorflow]
- name: Linting
run: |
python -m black ebcc/ --diff --check --verbose
python -m isort ebcc/ --diff --check-only --verbose
python -m flake8 ebcc/ --verbose
python -m mypy ebcc/ --verbose
- name: Run minimal unit tests
run: |
python -m pip install pytest
EBCC_BACKEND=${{ matrix.backend }} pytest tests/test_minimal.py
if: matrix.minimal
- name: Run unit tests
run: |

Check failure on line 54 in .github/workflows/ci.yaml

View workflow run for this annotation

GitHub Actions / CI

Invalid workflow file

The workflow is not valid. .github/workflows/ci.yaml (Line: 54, Col: 14): Unexpected symbol: 'if'. Located at position 14 within expression: 'pytest-cov' if matrix.coverage else ''
python -m pip install pytest ${{ 'pytest-cov' if matrix.coverage else '' }}
EBCC_BACKEND=${{ matrix.backend }} pytest ${{ '--cov ebcc/' if matrix.coverage else '' }}
if: matrix.full
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
if: matrix.coverage
- name: Deploy documentation
run: mkdocs gh-deploy --force -f docs/mkdocs.yaml
if: matrix.documentation && github.ref == 'refs/heads/master'