Skip to content

Check the wheels with twine #916

Check the wheels with twine

Check the wheels with twine #916

name: cibuildwheel
on: [push, pull_request]
jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- uses: actions/checkout@v4
- name: checkout submodules
run: git submodule update --init --recursive
# Used to host cibuildwheel
- uses: actions/setup-python@v4
- name: Install cibuildwheel and other dependencies
run: python -m pip install cibuildwheel==2.17.0 build wheel setuptools twine
# - name: Install LLVM (clang-cl) on windows
# run: choco install -y llvm
# if: runner.os == 'Windows'
- name: Build sdist
run: python -m build --no-isolation --sdist --outdir wheelhouse
if: runner.os == 'Windows'
- name: Build wheels
run: python -m cibuildwheel --output-dir wheelhouse
# to supply options, put them in 'env', like:
env:
CIBW_ARCHS: auto64
CIBW_ARCHS_MACOS: "universal2"
CIBW_ENVIRONMENT_MACOS: MACOSX_DEPLOYMENT_TARGET=11.0
CIBW_ENVIRONMENT_LINUX: CXXFLAGS='-fconcepts'
CIBW_BUILD_VERBOSITY_WINDOWS: 2
CIBW_SKIP: "*pypy* *pp* *cp36* *cp37* *musl*"
- name: Check the wheels are valid for PyPI upload
run: twine check ./wheelhouse/*
- name: Upload Files
uses: actions/upload-artifact@v4
with:
name: artifact-${{ matrix.os }}
path: |
./wheelhouse/*.whl
./wheelhouse/*.tar.gz
merge:
runs-on: ubuntu-latest
needs: build_wheels
steps:
- name: Merge Artifacts
uses: actions/upload-artifact/merge@v4
with:
name: artifact
pattern: artifact-*