Skip to content

Migrate to the shared tox workflow #1

Migrate to the shared tox workflow

Migrate to the shared tox workflow #1

Workflow file for this run

name: "🧪 Test"
on:
pull_request:
push:
branches:
- "develop"
- "master"
- "main"
- "releases"
jobs:
test:
name: "${{ matrix.name }}"
strategy:
fail-fast: false
matrix:
include:
- name: "Linux (CPython)"
runner: "ubuntu-latest"
cpythons:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
tox-factors:
- "chardet"
cache-key-hash-files:
- "pyproject.toml"
- "requirements/*/requirements.txt"
- name: "Linux (PyPy)"
runner: "ubuntu-latest"
pypys:
- "3.9"
- "3.10"
tox-factors:
- "chardet"
cache-key-hash-files:
- "pyproject.toml"
- "requirements/*/requirements.txt"
# macOS and Windows tests target only the upper and lower CPython versions.
- name: "macOS"
runner: "macos-latest"
cpythons:
- "3.9"
- "3.13"
tox-factors:
- "chardet"
cache-key-hash-files:
- "pyproject.toml"
- "requirements/*/requirements.txt"
- name: "Windows"
runner: "windows-latest"
cpythons:
- "3.9"
- "3.13"
tox-factors:
- "chardet"
cache-key-hash-files:
- "pyproject.toml"
- "requirements/*/requirements.txt"
- name: "Quality"
runner: "ubuntu-latest"
cpythons:
- "3.12"
tox-environments:
- "docs"
- "mypy"
cache-paths:
- ".mypy_cache/"
cache-key-hash-files:
- "docs/conf.py"
- "pyproject.toml"
- "requirements/*/requirements.txt"
uses: "kurtmckee/github-workflows/.github/workflows/tox.yaml@enumerate-pythons" # v0.4
with:
config: "${{ toJSON(matrix) }}"