only_if: changesInclude('.cirrus.yml') || ($CIRRUS_BRANCH == "main" && !changesIncludeOnly('docs/*', '.pre-commit-config.yaml')) || $CIRRUS_BRANCH =~ 'cirrus.*' run_tests: &RUN_TESTS install_cibuildwheel_script: - python -m pip install dependency-groups - python -m dependency_groups test | xargs python -m pip install -e. run_cibuildwheel_tests_script: - python ./bin/run_tests.py linux_x86_task: timeout_in: 120m compute_engine_instance: image_project: cirrus-images image: family/docker-builder platform: linux cpu: 8 memory: 8G env: VENV_ROOT: ${HOME}/venv-cibuildwheel PATH: ${VENV_ROOT}/bin:${PATH} install_pre_requirements_script: - docker run --rm --privileged docker.io/tonistiigi/binfmt:latest --install all - add-apt-repository -y ppa:deadsnakes/ppa - apt-get update - apt-get install -y python3.12-venv - python3.12 -m venv ${VENV_ROOT} <<: *RUN_TESTS linux_aarch64_task: compute_engine_instance: image_project: cirrus-images image: family/docker-builder-arm64 architecture: arm64 platform: linux cpu: 4 memory: 4G env: VENV_ROOT: ${HOME}/venv-cibuildwheel PATH: ${VENV_ROOT}/bin:${PATH} install_pre_requirements_script: - docker run --rm --privileged docker.io/tonistiigi/binfmt:latest --install all - add-apt-repository -y ppa:deadsnakes/ppa - apt-get update - apt-get install -y python3.12-venv - python3.12 -m venv ${VENV_ROOT} <<: *RUN_TESTS windows_x86_task: # The task takes ~55 minutes while the timeout happens # after 60 minutes by default, let's allow some wiggle room. timeout_in: 120m windows_container: image: cirrusci/windowsservercore:visualstudio2022 cpu: 8 memory: 8G install_pre_requirements_script: - choco install -y --no-progress python3 --version 3.12.4 - refreshenv - echo PATH=%PATH% >> "%CIRRUS_ENV%" <<: *RUN_TESTS macos_arm64_task: macos_instance: image: ghcr.io/cirruslabs/macos-runner:sonoma env: VENV_ROOT: ${HOME}/venv-cibuildwheel PATH: ${VENV_ROOT}/bin:${PATH} install_pre_requirements_script: - brew install python@3.12 - python3.12 -m venv ${VENV_ROOT} <<: *RUN_TESTS macos_arm64_cp38_task: macos_instance: image: ghcr.io/cirruslabs/macos-runner:sonoma env: VENV_ROOT: ${HOME}/venv-cibuildwheel PATH: ${VENV_ROOT}/bin:${PATH} PYTEST_ADDOPTS: --run-cp38-universal2 -k 'test_cp38_arm64_testing_universal2_installer or test_arch_auto' install_pre_requirements_script: - brew install python@3.12 - python3.12 -m venv ${VENV_ROOT} - curl -fsSLO https://www.python.org/ftp/python/3.8.10/python-3.8.10-macos11.pkg - sudo installer -pkg python-3.8.10-macos11.pkg -target / - rm python-3.8.10-macos11.pkg - sh "/Applications/Python 3.8/Install Certificates.command" <<: *RUN_TESTS