Skip to content

Replace setup.py with pyproject.toml | #41346 #310

Replace setup.py with pyproject.toml | #41346

Replace setup.py with pyproject.toml | #41346 #310

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Python CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: [3.11, 3.13]
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: dj_web_utils
POSTGRES_PASSWORD: dj_web_utils
POSTGRES_USER: dj_web_utils
ports:
- "5432:5432"
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install antivirus
run: |
sudo apt-get update
sudo apt-get install -y clamav-daemon
sudo systemctl start clamav-freshclam
sleep 60
sudo systemctl start clamav-daemon
sleep 60
sudo systemctl status clamav-daemon
- name: Install Python dependencies
run: |
python3 -m pip install --upgrade pip
python3 -m pip install -e '.[dev]'
- name: Lint code with Python ${{ matrix.python-version }}
run: |
make lint_local
- name: Check for deadcode with Python ${{ matrix.python-version }}
run: |
make deadcode_local
- name: Run test with Python ${{ matrix.python-version }}
env:
DJANGO_SETTINGS_MODULE: settings
PYTHONPATH: tests:${PYTHONPATH}
run: |
make test_local