|
- name: Build wheels
- on: push
-
- jobs:
- build-linux:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Set up QEMU
- uses: docker/setup-qemu-action@v1
- - name: Build manylinux2014 x86-64 wheels
- uses: earwig/python-wheels-manylinux-build@latest-manylinux2014_x86_64
- with:
- python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311'
- - name: Build manylinux 2014 aarch64 wheels
- uses: earwig/python-wheels-manylinux-build@latest-manylinux2014_aarch64
- with:
- python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311'
- - uses: actions/upload-artifact@v2
- with:
- name: wheels
- path: dist/*.whl
- - name: Publish package to PyPI
- # Only actually publish if a new tag was pushed
- if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
- uses: pypa/gh-action-pypi-publish@37e305e7413032d8422456179fee28fac7d25187
- with:
- user: __token__
- password: ${{ secrets.pypi_password }}
-
- build-macos:
- runs-on: macos-latest
- strategy:
- matrix:
- python-version:
- - '3.7'
- - '3.8'
- - '3.9'
- - '3.10'
- - '3.11'
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: ${{ matrix.python-version }}
- - name: Build wheels
- run: |
- python -m pip install --upgrade pip wheel setuptools
- pip wheel . -w dist/
- ls dist/
- - uses: actions/upload-artifact@v2
- with:
- name: wheels
- path: dist/*.whl
- - name: Publish package to PyPI
- # Only actually publish if a new tag was pushed
- if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
- # We can't use the pypa action because of https://github.com/pypa/gh-action-pypi-publish/issues/15
- run: |
- pip install twine
- TWINE_USERNAME="__token__" \
- TWINE_PASSWORD="${{ secrets.pypi_password }}" \
- twine upload dist/*
|