Replace Azure Pipelines CI with GitHub Actions tests workflow #1
Workflow file for this run
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
| name: CI | |
| on: | |
| push: | |
| pull_request: | |
| jobs: | |
| tests: | |
| name: Test Python ${{ matrix.python-version }} on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| permissions: | |
| contents: read | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: ubuntu-latest | |
| python-version: '3.13' | |
| - os: ubuntu-latest | |
| python-version: '3.12' | |
| - os: windows-latest | |
| python-version: '3.12' | |
| - os: macos-latest | |
| python-version: '3.12' | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install system dependencies (Linux) | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y pandoc graphviz | |
| - name: Install system dependencies (macOS) | |
| if: runner.os == 'macOS' | |
| run: brew install pandoc graphviz | |
| - name: Install pip tools | |
| run: python -m pip install --upgrade pip setuptools wheel | |
| - name: Install requirements | |
| run: pip install -r requirements.txt | |
| - name: Install requirements-dev | |
| run: pip install -r requirements-dev.txt | |
| - name: Build wheel | |
| run: python -m pip wheel . --wheel-dir dist | |
| - name: Install package | |
| run: pip install . | |
| - name: Run tests | |
| run: python -m pytest --durations=10 --ignore-glob=**LONG*.py --ignore-glob=**notebook*.py | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: wheel-${{ matrix.os }}-${{ matrix.python-version }} | |
| path: dist/ |