Skip to content

Overhaul CI

Overhaul CI #12

name: 'READY: Run OS/Python test matrix'
on:
pull_request:
types:
- opened
- reopened
- synchronize
- ready_for_review
branches:
- main
- stable
jobs:
python_os_test_matrix:
name: ${{ matrix.os }} python ${{ matrix.py }}
runs-on: ${{ matrix.os }}
if: ${{ !github.event.pull_request.draft }}
strategy:
matrix:
os: ['windows-latest', 'ubuntu-latest', 'macos-latest']
py: ['3.9', '3.10', '3.11', '3.13']
include:
- os: 'macos-latest'
py: '3.12'
steps:
- name: Check out repo
uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py }}
cache: 'pip'
cache-dependency-path: requirements-ci.txt
- name: Update pip
run: python -m pip install -U pip
- name: Install & report CI dependencies
run: |
python -m pip install -U --force-reinstall -r requirements-ci.txt
python --version
pip list
- name: Build docs
run: |
cd doc
make html
mkdir scratch
- name: Run tests
run: |
pytest --testall --nonloc