Skip to content

Merge pull request #111 from UIUCLibrary/dev #42

Merge pull request #111 from UIUCLibrary/dev

Merge pull request #111 from UIUCLibrary/dev #42

Workflow file for this run

on: [push, pull_request]
name: Tox Multi-platform Compatibility Test
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
setup:
name: Setup
runs-on: ubuntu-latest
outputs:
tox_matrix: ${{ steps.dataStep.outputs.myoutput }}
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
name: Get tox environments
with:
python-version: '3.13'
cache: 'pip' # caching pip dependencies
- id: dataStep
run: |
pip install uv
echo "myoutput=$(uv run --quiet --only-group=tox tox --listenvs -a | jq --raw-input . | jq -c --slurp )" >> $GITHUB_OUTPUT
build:
needs: setup
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
tox-environment: ${{ fromJson(needs.setup.outputs.tox_matrix) }}
fail-fast: false
name: "${{ matrix.os }}: ${{ matrix.tox-environment }} "
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
cache: 'pip' # caching pip dependencies
- name: Install requirements
run: |
pip install uv
- name: Run tox
env:
TOXENV: ${{ matrix.tox-environment }}
run: uv run --only-group tox-uv tox run --runner uv-venv-lock-runner -e ${{matrix.tox-environment}}