Skip to content

Prepare release 2.2.5 #91

Prepare release 2.2.5

Prepare release 2.2.5 #91

Workflow file for this run

name: Build python wheels
on:
push:
branches:
- main
pull_request:
branches:
- main
release:
types:
- published
jobs:
build_wheels_cloud:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-24.04
arch: x86_64
py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*
before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel
extra-env: ""
mdt: ""
- os: ubuntu-24.04-arm
arch: aarch64
py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*
before-all: yum groupinstall -y "Development Tools" && dnf -y install ninja-build pkgconf openssl-devel zlib-devel bzip2-devel xz-devel
extra-env: ""
mdt: ""
- os: macos-15-intel
arch: x86_64
py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*
before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz
extra-env: CC=clang CXX=clang++
mdt: 11
- os: macos-15
arch: arm64
py-vers: cp39-* cp310-* cp311-* cp312-* cp313-* cp314-*
before-all: brew install pkg-config automake autoconf autoconf-archive libtool ninja openssl zlib bzip2 xz
extra-env: CC=clang CXX=clang++
mdt: 11
env:
CIBW_BUILD: ${{ matrix.py-vers }}
CIBW_SKIP: cp3*-musllinux_*
CIBW_ARCHS: ${{ matrix.arch }}
CIBW_MANYLINUX_X86_64_IMAGE: manylinux_2_28
CIBW_BEFORE_ALL: ${{ matrix.before-all }}
CIBW_BEFORE_BUILD: pip install --upgrade pip setuptools wheel ninja numpy cython
CIBW_ENVIRONMENT: VCPKG_BUILD_TYPE=release ${{ matrix.extra-env }}
MACOSX_DEPLOYMENT_TARGET: ${{ matrix.mdt }}
steps:
- name: checkout repo & submodules
uses: actions/checkout@v5
with:
submodules: true
fetch-depth: 0
- name: Build wheels
uses: pypa/cibuildwheel@v3.2.0
- uses: actions/upload-artifact@v4
with:
name: wheels-cloud-${{ matrix.os }}
path: ./wheelhouse/*.whl
retention-days: 1
upload_all:
name: Upload to PyPI
needs: [build_wheels_cloud]
runs-on: ubuntu-latest
if: ${{ github.event_name == 'release' && github.event.action == 'published' }}
steps:
- name: Download wheels from cloud runners
uses: actions/download-artifact@v4
with:
pattern: wheels-cloud-*
merge-multiple: true
path: wheels
- uses: pypa/gh-action-pypi-publish@v1.13.0
with:
user: __token__
password: ${{ secrets.PYPI_TOKEN }}
packages_dir: wheels/