Skip to content

Commit

Permalink
chore(ci): fix upload & add more platforms to cibuildwheel (#204)
Browse files Browse the repository at this point in the history
  • Loading branch information
monosans authored Nov 25, 2024
1 parent 70443e0 commit 1a197b2
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 47 deletions.
14 changes: 6 additions & 8 deletions .github/workflows/release-wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,16 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: true
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
name: Install Python
with:
python-version: '3.8'
check-latest: true
python-version: '3.13'
- name: Build sdist
run: python setup.py sdist
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: sdist
path: dist/*.tar.gz

upload_pypi:
Expand All @@ -34,11 +36,7 @@ jobs:
# upload to PyPI when a GitHub Release is created
if: github.event_name == 'release' && github.event.action == 'published'
steps:
- uses: actions/[email protected]
with:
name: artifact
path: dist

- uses: actions/download-artifact@v4
- uses: pypa/gh-action-pypi-publish@release/v1
with:
user: __token__
Expand Down
49 changes: 16 additions & 33 deletions .github/workflows/run-cibuildwheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,48 +20,31 @@ jobs:
fail-fast: ${{ inputs.fail-fast }}
matrix:
include:
- name: Windows AMD64 & x86
os: windows-2019
- name: macOS x86_64 & universal2
- name: Windows
os: windows-latest
- name: macOS x86_64
os: macos-13
- name: macOS M1
os: macos-15
- name: manylinux and musllinux x86_64 & i686
os: ubuntu-20.04
cibw_build: cp3*-{manylinux,musllinux}_*
cibw_archs: auto
- name: manylinux aarch64
os: ubuntu-20.04
cibw_build: cp3*-manylinux_*
cibw_archs: aarch64
- name: musllinux aarch64
os: ubuntu-20.04
cibw_build: cp3*-musllinux_*
cibw_archs: aarch64

- name: macOS arm64
os: macos-latest
- name: Linux
os: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Set up QEMU
if: runner.os == 'Linux' && matrix.cibw_archs == 'aarch64'
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v3
with:
platforms: all
- name: Set CIBW_BUILD
if: ${{ matrix.cibw_build }}
run: echo "CIBW_BUILD=${{ matrix.cibw_build }}" >> $GITHUB_ENV
shell: bash
- name: Set CIBW_ARCHS
if: ${{ matrix.cibw_archs }}
run: echo "CIBW_ARCHS=${{ matrix.cibw_archs }}" >> $GITHUB_ENV
shell: bash
- name: Enable CPython prerelease
if: ${{ inputs.prerelease-pythons }}
run: echo "CIBW_ENABLE=cpython-prerelease" >> $GITHUB_ENV
- name: Build wheels
uses: pypa/cibuildwheel@v2.21.2
uses: pypa/cibuildwheel@v2.22.0
with:
output-dir: ./wheelhouse
env:
CIBW_PRERELEASE_PYTHONS: ${{ inputs.prerelease-pythons }}
- uses: actions/upload-artifact@v3
output-dir: dist
- uses: actions/upload-artifact@v4
with:
path: ./wheelhouse/*.whl
name: wheels-${{ matrix.os }}
path: dist/*.whl
5 changes: 3 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,16 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, windows-2019, macos-13, macos-15]
os: [ubuntu-latest, windows-latest, macos-13, macos-latest]
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
with:
submodules: true
- name: Setup Python
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
check-latest: true
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: python -m pip install -U setuptools wheel
Expand Down
5 changes: 1 addition & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
build = "cp3*"

[tool.cibuildwheel.linux]
archs = ["auto", "aarch64"]
archs = ["auto", "aarch64", "ppc64le", "s390x"]
before-all = """
set -eux
# musllinux_*
Expand All @@ -22,6 +22,3 @@ if command -v yum; then
yum install -y libffi-devel
fi
"""

[tool.cibuildwheel.macos]
archs = ["x86_64", "universal2"]

0 comments on commit 1a197b2

Please sign in to comment.