Skip to content

Switch to just and uv #494

Switch to just and uv

Switch to just and uv #494

Workflow file for this run

name: Test
on:
push:
branches: ["main"]
pull_request:
concurrency:
group: test-${{ github.head_ref }}
cancel-in-progress: true
jobs:
ruff:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: chartboost/ruff-action@v1
tests_matrix:
runs-on: ubuntu-latest
needs: [ ruff ]
strategy:
matrix:
python-version: [3.9, "3.10", 3.11, 3.12, 3.13]
django-version: [4.2, 5.0, 5.1, "main"]
exclude:
# Django 5.0
- python-version: 3.9
django-version: 5.0
# Django 5.1
- python-version: 3.9
django-version: 5.1
# Django main
- python-version: 3.9
django-version: "main"
steps:
- uses: actions/checkout@v4
- name: Update repositories
run: sudo apt-get update
- name: Install uv
uses: astral-sh/setup-uv@v4
- name: Set up Python ${{ matrix.python-version }}
run: uv python install ${{ matrix.python-version }}
- name: Install the project
run: uv sync --all-extras --all-groups --upgrade
- name: Install Django ${{ matrix.django-version }}
run: uv pip install Django==${{ matrix.django-version }}
if: matrix.django-version != 'main'
- name: Install Django main branch
run: python -m pip install -U https://github.com/django/django/archive/master.tar.gz
if: matrix.django-version == 'main'
- run: uvx --with toml coverage run manage.py test
- name: Upload coveralls (parallel)
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COVERALLS_PARALLEL: true
run: uvx coveralls --service=github
# docs:
# runs-on: ubuntu-latest
# needs: [ tests_matrix ]
# steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-python@v5
# with:
# python-version: "3.11"
# cache: 'pip'
# cache-dependency-path: docs/requirements.txt
# - name: Build documentation
# run: |
# python -m pip install -r docs/requirements.txt
# make docs
# build:
# runs-on: ubuntu-latest
# needs: [ tests_matrix ]
# steps:
# - uses: actions/checkout@v4
# - uses: actions/setup-python@v5
# with:
# python-version: "3.11"
# cache: 'pip'
# cache-dependency-path: requirements-dev.txt
# - name: Build package
# run: |
# python -m pip install -r requirements-dev.txt
# make build
# tests:
# if: always()
# runs-on: ubuntu-latest
# needs: [ tests_matrix, ruff, docs, build ]
# steps:
# - name: Check tests matrix status
# if: needs.tests_matrix.result != 'success'
# run: exit 1
# - name: Finish parallel build
# uses: coverallsapp/github-action@v2
# with:
# parallel-finished: true
# github-token: ${{ secrets.GITHUB_TOKEN }}