Skip to content

Commit

Permalink
Use cibuildwheel for MacOS and Linux builds
Browse files Browse the repository at this point in the history
Split sdist and wheels into two separate jobs
  • Loading branch information
davecwright3 committed Feb 19, 2024
1 parent 8320b79 commit 2fa5b18
Showing 1 changed file with 30 additions and 3 deletions.
33 changes: 30 additions & 3 deletions .github/workflows/publish_to_pypi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,32 @@ on:
types: [published]

jobs:
build-publish:
name: Build and publish Python distributions to PyPI

build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macOS-latest]
steps:
- uses: actions/checkout@v3

- uses: actions/setup-python@v3
with:
python-version: 3.11

- name: Build wheels
uses: pypa/[email protected]
env:
# Skip CPython 3.6, 3.7, 3.8, 3.12
CIBW_SKIP: cp36-* cp37-* cp38-* cp312-* pp*

- uses: actions/upload-artifact@v3
with:
path: ./wheelhouse/*.whl

make_sdist:
name: Make SDist
runs-on: ubuntu-latest
steps:
- name: git checkout repository main
Expand All @@ -25,9 +49,12 @@ jobs:
run: python -m pip install build --user

- name: Build a binary wheel and a source tarball
run: python -m build --sdist --wheel --outdir dist/ .
run: python -m build --sdist --outdir dist/ .

- uses: actions/upload-artifact@v3
with:
path: ./dist/*.tar.gz

pypi-publish:
needs: ['build_wheels, make_sdist']
environment: 'publish'
Expand Down

0 comments on commit 2fa5b18

Please sign in to comment.