Skip to content

setting up pypi-publish env #24

setting up pypi-publish env

setting up pypi-publish env #24

Workflow file for this run

name: Build Python Wheels
on:
push:
pull_request:
jobs:
linux-build:
runs-on: ubuntu-latest
strategy:
matrix:
manylinux:
- manylinux2014
- manylinux_2_28
target: [x86_64, aarch64, ppc64le, s390x]
steps:
- name: Github Checkout
uses: actions/checkout@v4
- name: Python Setup
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Build wheels
uses: PyO3/maturin-action@v1
with:
target: ${{ matrix.target }}
manylinux: ${{ matrix.manylinux }}
args: --release --features=python --out dist -m Cargo.toml
- name: Upload wheels
uses: actions/upload-artifact@v4
with:
name: wheels_${{ matrix.manylinux }}_${{ matrix.target }}
path: dist
release:
name: Release
runs-on: ubuntu-latest
environment: pypi-publish
if: startsWith(github.ref, 'refs/tags/')
needs: [ linux-build ]
steps:
- name: Download Build Artifacts
uses: actions/download-artifact@v4
with:
path: wheels
- name: Python Setup
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
run: |
pip install --upgrade twine
twine upload --skip-existing wheels/**/*.whl