Skip to content

Deploy to PYPI

Deploy to PYPI #21

Workflow file for this run

name: Build
on:
release:
types: [released]
workflow_dispatch:
jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ${{ fromJSON(vars.BUILD_OS)}}
steps:
- uses: actions/checkout@v4
# Used to host cibuildwheel
- uses: actions/setup-python@v5
- name: Install cibuildwheel
run: python -m pip install cibuildwheel==2.21.2
- name: build
run: python -m cibuildwheel --output-dir wheelhouse
- uses: actions/upload-artifact@v4
with:
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
path: ./wheelhouse/*.whl
publish:
name: Publish wheels to pypi
runs-on: ubuntu-latest
permissions:
# IMPORTANT: this permission is mandatory for trusted publishing
id-token: write
needs: build_wheels
steps:
- uses: actions/download-artifact@v4
with:
path: wheelhouse
- name: copy to wheelhouse
run: |
mkdir wheels
cp -r wheelhouse/*/*.whl wheels
- uses: pypa/gh-action-pypi-publish@release/v1
with:
skip-existing: true
verbose: true
packages-dir: wheels/