Skip to content

Build Python Wheels for Release #11

Build Python Wheels for Release

Build Python Wheels for Release #11

Workflow file for this run

name: Build Python Wheels for Release
on:
workflow_dispatch:
jobs:
build_windows_wheels:
name: Build wheels on windows
runs-on: windows-latest
strategy:
matrix:
python: [cp37, cp38, cp39, cp310, cp311, cp312]
steps:
- uses: actions/checkout@v4
- name: Git config for fetching pull requests
run: |
git config --global --add remote.origin.fetch +refs/pull/*/merge:refs/remotes/pull/*
- name: Build wheels
uses: pypa/cibuildwheel@v2.21.1
env:
CIBW_BUILD: ${{ matrix.python }}-win*
CIBW_ENVIRONMENT: >
REGOCPP_REPO=https://github.com/${{github.repository}}
REGOCPP_TAG=${{github.sha}}
with:
package-dir: ${{github.workspace}}/wrappers/python/
- uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.python }}-windows
path: ./wheelhouse/*.whl
build_mac_wheels:
name: Build wheels on mac
runs-on: macos-latest
strategy:
matrix:
python: [cp310, cp311, cp312]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
id: python
with:
python-version: "3.10 - 3.12"
update-environment: false
- name: Git config for fetching pull requests
run: |
git config --global --add remote.origin.fetch +refs/pull/*/merge:refs/remotes/pull/*
- name: Fix path
run: |
export PATH=$(python3 -m site --user-base)/bin:$PATH
- name: Build wheels
uses: pypa/cibuildwheel@v2.21.1
env:
CIBW_BUILD: ${{ matrix.python }}-macosx*
CIBW_ARCHS_MACOS: arm64
CIBW_ENVIRONMENT_MACOS : >
MACOSX_DEPLOYMENT_TARGET=11.0
REGOCPP_REPO=https://github.com/${{github.repository}}
REGOCPP_TAG=${{github.sha}}
with:
package-dir: ${{github.workspace}}/wrappers/python/
- uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.python }}-mac
path: ./wheelhouse/*.whl
build_manylinux_wheels:
name: Build wheels on manylinux
runs-on: ubuntu-latest
strategy:
matrix:
python: [cp37, cp38, cp39, cp310, cp311, cp312, pp39, pp310]
steps:
- uses: actions/checkout@v4
- name: Git config for fetching pull requests
run: |
git config --global --add remote.origin.fetch +refs/pull/*/merge:refs/remotes/pull/*
- name: Build wheels
uses: pypa/cibuildwheel@v2.21.1
env:
CIBW_BUILD: ${{ matrix.python }}-manylinux*
CIBW_BEFORE_ALL: yum makecache && yum -y install devtoolset-10-libatomic-devel
CIBW_ENVIRONMENT: >
REGOCPP_REPO=https://github.com/${{github.repository}}
REGOCPP_TAG=${{github.sha}}
with:
package-dir: ${{github.workspace}}/wrappers/python/
- uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.python }}-manylinux
path: ./wheelhouse/*.whl
build_musllinux_wheels:
name: Build wheels on musllinux
runs-on: ubuntu-latest
strategy:
matrix:
python: [cp37, cp38, cp39, cp310, cp311, cp312]
steps:
- uses: actions/checkout@v4
- name: Git config for fetching pull requests
run: |
git config --global --add remote.origin.fetch +refs/pull/*/merge:refs/remotes/pull/*
- name: Build wheels
uses: pypa/cibuildwheel@v2.21.1
env:
CIBW_BUILD: ${{ matrix.python }}-musllinux*
CIBW_ENVIRONMENT: >
REGOCPP_REPO=https://github.com/${{github.repository}}
REGOCPP_TAG=${{github.sha}}
with:
package-dir: ${{github.workspace}}/wrappers/python/
- uses: actions/upload-artifact@v4
with:
name: wheels-${{ matrix.python }}-musllinux
path: ./wheelhouse/*.whl
merge:
needs:
- build_windows_wheels
- build_mac_wheels
- build_manylinux_wheels
- build_musllinux_wheels
runs-on: ubuntu-latest
steps:
- name: Download Wheels
uses: actions/download-artifact@v4
with:
path: wheelhouse
pattern: wheels-*
merge-multiple: true
- run: ls -R wheelhouse
- uses: actions/upload-artifact@v4
with:
name: wheels
path: ./wheelhouse/*