Skip to content

check

check #3957

Workflow file for this run

name: check
on:
workflow_dispatch:
push:
branches: ["main"]
tags-ignore: ["**"]
pull_request:
schedule:
- cron: "0 8 * * *"
concurrency:
group: check-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: test ${{ matrix.py }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
py:
- "3.12"
- "3.11"
- "3.10"
- "3.9"
- "3.8"
os:
- ubuntu-latest
- windows-latest
- macos-latest
steps:
- name: Setup python for tox
uses: actions/setup-python@v5
with:
python-version: "3.12"
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install self-tox
run: python -m pip install .
- name: Setup python for test ${{ matrix.py }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.py }}
- name: Pick environment to run
run: |
import os; import platform; import sys; from pathlib import Path
env = f'TOXENV=py{"" if platform.python_implementation() == "CPython" else "py"}3{sys.version_info.minor}'
print(f"Picked: {env} for {sys.version} based of {sys.executable}")
with Path(os.environ["GITHUB_ENV"]).open("ta") as file_handler:
file_handler.write(env)
shell: python
- name: Setup test suite
run: tox r -vv --notest
- name: Run test suite
run: tox r --skip-pkg-install
env:
CI_RUN: "yes"
DIFF_AGAINST: HEAD
PYTEST_XDIST_AUTO_NUM_WORKERS: 0
check:
name: tox env ${{ matrix.tox_env }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
tox_env:
- type
- dev
- docs
- pkg_meta
os:
- ubuntu-latest
- windows-latest
exclude:
- { os: windows-latest, tox_env: pkg_meta }
- { os: windows-latest, tox_env: docs }
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install self-tox
run: python -m pip install .
- name: Run check for ${{ matrix.tox_env }}
run: tox r -e ${{ matrix.tox_env }}
env:
UPGRADE_ADVISORY: "yes"