66 lines
1.8 KiB
YAML
66 lines
1.8 KiB
YAML
os: linux
|
|
dist: jammy
|
|
language: python
|
|
|
|
branches:
|
|
only:
|
|
- main
|
|
|
|
# only build the main branch or PR that explicitely want to test with Travis CI
|
|
if: (type = "push") OR (commit_message =~ /travis-ci/)
|
|
|
|
jobs:
|
|
include:
|
|
- name: Linux | x86_64 + i686 | Python 3.12
|
|
python: 3.12
|
|
services: docker
|
|
env: PYTHON=python
|
|
|
|
- name: Linux | arm64 | Python 3.12
|
|
python: 3.12
|
|
services: docker
|
|
arch: arm64
|
|
env: PYTHON=python
|
|
|
|
- name: Linux | ppc64le | Python 3.12
|
|
python: 3.12
|
|
services: docker
|
|
arch: ppc64le
|
|
allow_failure: True
|
|
env:
|
|
- PYTHON=python
|
|
# skip test_manylinuxXXXX_only, it uses too much disk space
|
|
# c.f. https://travis-ci.community/t/running-out-of-disk-space-quota-when-using-docker-on-ppc64le/11634
|
|
- PYTEST_ADDOPTS='-k "not test_manylinuxXXXX_only"'
|
|
|
|
- name: Windows | x86_64 | Python 3.12
|
|
os: windows
|
|
language: shell
|
|
before_install:
|
|
- choco upgrade python3 -y --version 3.12.8 --limit-output --params "/InstallDir:C:\\Python312"
|
|
env:
|
|
- PYTHON=C:\\Python312\\python
|
|
|
|
- name: Linux | s390x | Python 3.12
|
|
python: 3.12
|
|
services: docker
|
|
arch: s390x
|
|
allow_failure: True
|
|
env: PYTHON=python
|
|
|
|
install:
|
|
- if [ "${TRAVIS_OS_NAME}" == "linux" ]; then docker run --rm --privileged docker.io/tonistiigi/binfmt:latest --install all; fi
|
|
- $PYTHON -m pip install -U pip dependency-groups
|
|
- $PYTHON -m dependency_groups test | xargs $PYTHON -m pip install -e.
|
|
|
|
script: |
|
|
# travis_wait disable the output while waiting
|
|
# use the same kind of tricks as in multibuild
|
|
(while true; do echo "travis_keep_alive"; sleep 300; done) &
|
|
SPINNER_PID=$!
|
|
disown
|
|
result=0
|
|
$PYTHON ./bin/run_tests.py --num-processes 2 || result=1
|
|
kill -9 ${SPINNER_PID}
|
|
test ${result} -eq 0
|