Skip to content

CI workflow improvements #448

CI workflow improvements

CI workflow improvements #448

Workflow file for this run

name: CI
on:
push:
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
test_ubuntu:
name: "Test with Python ${{ matrix.python-version }} on ${{ matrix.image }}"
runs-on: ${{ matrix.image }}
strategy:
fail-fast: false
matrix:
python-version:
- "3.9"
- "3.10"
- "3.11"
- "3.12"
- "3.13"
- "pypy3.9"
- "pypy3.10"
image:
- "ubuntu-22.04"
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Install apt dependencies
run: >
sudo apt-get update &&
sudo apt-get install -y ldap-utils slapd enchant-2 libldap2-dev libsasl2-dev apparmor-utils
- name: Disable AppArmor
run: sudo aa-disable /usr/sbin/slapd
- name: Setup uv
uses: astral-sh/setup-uv@v7
with:
version: "0.9"
python-version: ${{ matrix.python-version }}
activate-environment: true
- name: Install Python dependencies
run: >
uv pip install --upgrade pip setuptools tox tox-gh-actions
- name: Test
run: python -m tox
test_fedora:
name: "Test with tox env ${{ matrix.tox_env }} on Fedora"
runs-on: ubuntu-22.04
strategy:
matrix:
tox_env:
- py39
- py310
- py311
- py312
- py313
- py3-nosasltls
- py3-trace
- pypy3
- doc
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Test
uses: fedora-python/tox-github-action@v41.0
with:
tox_env: ${{ matrix.tox_env }}
dnf_install: >
@c-development openldap-devel python3-devel
openldap-servers openldap-clients lcov clang-analyzer valgrind
enchant python3-setuptools