Files
wger/.github/workflows/ci.yml
Roland Geider a8ba6fe2d6 Refactor the way the settings are handled.
Instead of a "create-settings" command, which didn't contain all the options
and was a bit awkward, we now have specific settings used for different things.
2025-12-28 21:32:44 +01:00

69 lines
1.7 KiB
YAML

name: Continuous Integration
on:
push:
branches: [ master, ]
paths:
- '**.py'
- 'pyproject.toml'
pull_request:
# The branches below must be a subset of the branches above
branches: [ master, ]
paths:
- '**.py'
- 'pyproject.toml'
jobs:
ci-job:
runs-on: ubuntu-latest
env:
DJANGO_SETTINGS_MODULE: settings.ci
DJANGO_MEDIA_ROOT: /tmp/wger-test
strategy:
matrix:
# Note: removed 3.14 because lingua-language-detector has no wheels yet
python-version: [ '3.10', '3.11', '3.12', '3.13' ]
name: CI job (python ${{ matrix.python-version }})
steps:
- uses: actions/checkout@v6
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
- name: Display Python version
run: python --version
- name: Install dependencies
run: |
uv sync --group dev
mkdir /tmp/wger-test
# Only run the tests with coverage for one version of python
- name: Test the application with coverage
if: matrix.python-version == 3.13
run: |
uv run coverage run --source='.' ./manage.py test
uv run coverage lcov
- name: Test the application
if: matrix.python-version != 3.13
run: |
uv run ./manage.py test
- name: Coveralls
if: matrix.python-version == 3.13
uses: coverallsapp/github-action@v2
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
path-to-lcov: coverage.lcov