name: Release on: workflow_dispatch: pull_request: release: types: - published jobs: dist: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Build SDist and wheel run: pipx run build - uses: actions/upload-artifact@v4 with: name: cibw-sdist path: dist/* - name: Check metadata run: pipx run twine check dist/* publish: needs: [dist] runs-on: ubuntu-latest if: github.event_name == 'release' && github.event.action == 'published' environment: name: pypi url: https://pypi.org/p/cibuildwheel permissions: id-token: write attestations: write steps: - uses: actions/download-artifact@v4 with: pattern: cibw-* path: dist merge-multiple: true - name: Generate artifact attestation for sdist and wheel uses: actions/attest-build-provenance@1c608d11d69870c2092266b3f9a6f3abbf17002c # v1.4.3 with: subject-path: "dist/cibuildwheel-*" - uses: pypa/gh-action-pypi-publish@release/v1