mirror of
https://github.com/jazzband/django-axes.git
synced 2026-03-16 22:30:23 +00:00
Run tests for Django 5.0 and 5.1 Run tests for Python 3.12 Add support for Django 5.1 Drop support for Django 3.2
84 lines
2.2 KiB
YAML
84 lines
2.2 KiB
YAML
name: Test
|
|
|
|
on: [push, pull_request]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
build:
|
|
name: build (Python ${{ matrix.python-version }}, Django ${{ matrix.django-version }})
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
max-parallel: 5
|
|
matrix:
|
|
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
|
|
django-version: ['4.2', '5.0', '5.1']
|
|
include:
|
|
# Tox configuration for QA environment
|
|
- python-version: '3.12'
|
|
django-version: 'qa'
|
|
# Django main
|
|
- python-version: '3.12'
|
|
django-version: 'main'
|
|
experimental: true
|
|
# PyPy 3.10
|
|
- python-version: 'pypy-3.10'
|
|
django-version: '4.2'
|
|
experimental: true
|
|
- python-version: 'pypy-3.10'
|
|
django-version: '5.0'
|
|
experimental: true
|
|
- python-version: 'pypy-3.10'
|
|
django-version: '5.1'
|
|
experimental: true
|
|
exclude:
|
|
- python-version: '3.8'
|
|
django-version: '5.0'
|
|
- python-version: '3.9'
|
|
django-version: '5.0'
|
|
- python-version: '3.8'
|
|
django-version: '5.1'
|
|
- python-version: '3.9'
|
|
django-version: '5.1'
|
|
|
|
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
|
|
- name: Get pip cache dir
|
|
id: pip-cache
|
|
run: |
|
|
echo "::set-output name=dir::$(pip cache dir)"
|
|
|
|
- name: Cache
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ${{ steps.pip-cache.outputs.dir }}
|
|
key:
|
|
${{ matrix.python-version }}-v1-${{ hashFiles('**/setup.py') }}
|
|
restore-keys: |
|
|
${{ matrix.python-version }}-v1-
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install --upgrade tox tox-gh-actions
|
|
|
|
- name: Tox tests
|
|
run: |
|
|
tox -v
|
|
env:
|
|
DJANGO: ${{ matrix.django-version }}
|
|
|
|
- name: Upload coverage
|
|
uses: codecov/codecov-action@v3
|
|
with:
|
|
name: Python ${{ matrix.python-version }}
|