Translated using Weblate (Irish) #3787
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Copyright © Michal Čihař <[email protected]> | |
# | |
# SPDX-License-Identifier: GPL-3.0-or-later | |
name: Test | |
on: [push, pull_request] | |
jobs: | |
test: | |
runs-on: ubuntu-24.04 | |
strategy: | |
matrix: | |
python-version: | |
- '3.11' | |
- '3.12' | |
name: Python ${{ matrix.python-version }} | |
services: | |
redis: | |
image: redis:7-alpine | |
ports: | |
- 6379:6379 | |
postgres: | |
image: postgres:17 | |
ports: | |
- 5432:5432 | |
# needed because the postgres container does not provide a healthcheck | |
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 | |
env: | |
POSTGRES_USER: postgres | |
POSTGRES_PASSWORD: postgres | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install apt dependencies | |
run: | | |
sudo apt update | |
sudo apt install libcairo-dev gir1.2-pango-1.0 libgirepository1.0-dev libacl1-dev gettext liblz4-dev libzstd-dev libxxhash-dev gir1.2-rsvg-2.0 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- uses: astral-sh/setup-uv@v5 | |
with: | |
cache-suffix: test | |
- name: Install pip dependencies | |
run: | | |
uv pip install --system https://github.com/nijel/thepay/archive/weblate.zip .[test] | |
- name: Test with Django | |
env: | |
CI_DATABASE: postgresql | |
CI_DB_PASSWORD: postgres | |
CI_DB_HOST: localhost | |
DJANGO_SETTINGS_MODULE: wllegal.settings_test | |
run: | | |
weblate collectstatic | |
coverage run `which weblate` test | |
- name: Coverage | |
run: | | |
coverage combine | |
coverage xml | |
- uses: codecov/codecov-action@v5 | |
with: | |
token: ${{secrets.CODECOV_TOKEN}} | |
flags: unittests | |
name: Python ${{ matrix.python-version }} | |
- name: DeepSource | |
continue-on-error: true | |
env: | |
DEEPSOURCE_DSN: ${{secrets.DEEPSOURCE_DSN}} | |
run: | | |
curl https://deepsource.io/cli | sh | |
./bin/deepsource report --analyzer test-coverage --key python --value-file ./coverage.xml |