mirror of
https://github.com/frappe/gunicorn.git
synced 2026-07-01 18:21:30 +08:00
* ci: Remove failing macos-13 from test matrix * ci: Add FreeBSD testing workflow * ci: Document test matrix rationale * ci: Update cross-platform-actions to v0.32.0 for FreeBSD 14.2 support * ci: Use FreeBSD 14.1 (14.2 has SSH connectivity issues) * ci: Switch to vmactions/freebsd-vm for FreeBSD testing * ci: Fix FreeBSD package names (pip included in Python) * ci: Simplify FreeBSD matrix and fix package names * ci: Use specific Python version command on FreeBSD * ci: Add sqlite3 package for FreeBSD * tests: Increase signal integration test timeouts for CI The signal integration tests were flaky in CI environments, especially FreeBSD VMs, due to 10-second timeouts being too short. Increased timeouts to 30 seconds to handle slower CI environments.
57 lines
1.8 KiB
YAML
57 lines
1.8 KiB
YAML
name: tox
|
|
on: [push, pull_request]
|
|
permissions:
|
|
contents: read # to fetch code (actions/checkout)
|
|
env:
|
|
# note that some tools care only for the name, not the value
|
|
FORCE_COLOR: 1
|
|
jobs:
|
|
tox:
|
|
name: ${{ matrix.os }} / ${{ matrix.python-version }}
|
|
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idtimeout-minutes
|
|
timeout-minutes: 20
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
unsupported: [false]
|
|
os:
|
|
- ubuntu-latest
|
|
# Not testing Windows: tests need Unix-only fcntl, grp, pwd, etc.
|
|
# FreeBSD: tested in separate freebsd.yml workflow
|
|
python-version:
|
|
# Supporting Python 3.10 through 3.13
|
|
- "3.10"
|
|
- "3.11"
|
|
- "3.12"
|
|
- "3.13"
|
|
- "pypy-3.10"
|
|
include:
|
|
# Test on macos-latest (arm64) with recent versions
|
|
- os: macos-latest
|
|
python-version: "3.12"
|
|
unsupported: false
|
|
- os: macos-latest
|
|
python-version: "3.13"
|
|
unsupported: false
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
- name: Using Python ${{ matrix.python-version }}
|
|
uses: actions/setup-python@v6
|
|
with:
|
|
python-version: ${{ matrix.python-version }}
|
|
cache: pip
|
|
cache-dependency-path: requirements_test.txt
|
|
check-latest: true
|
|
allow-prereleases: ${{ matrix.unsupported }}
|
|
- name: Install Dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install tox
|
|
- run: tox -e run-module
|
|
continue-on-error: ${{ matrix.unsupported }}
|
|
- run: tox -e run-entrypoint
|
|
continue-on-error: ${{ matrix.unsupported }}
|
|
- run: tox -e py
|
|
continue-on-error: ${{ matrix.unsupported }}
|