Skip to content

test

test #547

Workflow file for this run

name: test
on:
pull_request:
push:
branches: ["main", "v[0-9]*"]
tags: ["v[0-9]*"]
workflow_dispatch:
schedule:
# Weekly test (on branch main) every Thursday at 12:00 UTC.
# (Used to monitor compatibility with Django patches/dev and other dependencies.)
- cron: "0 12 * * 4"
jobs:
get-envlist:
runs-on: ubuntu-22.04
outputs:
envlist: ${{ steps.generate-envlist.outputs.envlist }}
steps:
- name: Get code
uses: actions/checkout@v4
- name: Install tox-gh-matrix
run: |
python -m pip install 'tox<4' 'tox-gh-matrix<0.3'
python -m tox --version
- name: Generate tox envlist
id: generate-envlist
run: |
python -m tox --gh-matrix
python -m tox --gh-matrix-dump # for debugging
test:
runs-on: ubuntu-22.04
needs: get-envlist
strategy:
matrix:
tox: ${{ fromJSON(needs.get-envlist.outputs.envlist) }}
fail-fast: false
name: ${{ matrix.tox.name }} ${{ matrix.tox.ignore_outcome && 'allow-failures' || '' }}
timeout-minutes: 15
steps:
- name: Get code
uses: actions/checkout@v4
- name: Setup Python ${{ matrix.tox.python.version }}
# Ensure matrix Python version is installed and available for tox
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.tox.python.spec }}
- name: Setup default Python
# Change default Python version back to something consistent
# for installing/running tox
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install tox
run: |
set -x
python -VV
python -m pip install 'tox<4'
python -m tox --version
- name: Test ${{ matrix.tox.name }}
run: |
python -m tox -e ${{ matrix.tox.name }}
continue-on-error: ${{ matrix.tox.ignore_outcome == true }}
env:
CONTINUOUS_INTEGRATION: true
TOX_OVERRIDE_IGNORE_OUTCOME: false