Release 0.6.3 #80
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Assets | |
on: | |
release: | |
types: | |
- created | |
push: | |
branches: | |
- "release**" | |
jobs: | |
macos-x64: | |
name: PyPI wheels for macOS | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
python: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python }} | |
- name: Install dependencies | |
run: | | |
brew install bison flex swig | |
echo "/usr/local/opt/bison/bin" >> $GITHUB_PATH | |
echo "/usr/local/opt/flex/bin" >> $GITHUB_PATH | |
python -m pip install --upgrade pip setuptools wheel | |
- name: Build wheel | |
env: | |
QX_CPU_COMPATIBILITY_MODE: ON | |
NPROCS: 10 | |
run: python setup.py bdist_wheel | |
- name: Wheel path | |
id: wheel | |
working-directory: pybuild/dist/ | |
run: echo "##[set-output name=wheel;]$(ls *.whl)" | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: pypi-macos-py${{ matrix.python }} | |
path: pybuild/dist/${{ steps.wheel.outputs.wheel }} | |
- uses: actions/upload-release-asset@v1 | |
if: ${{ github.event_name == 'release' && github.event.action == 'created' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ github.event.release.upload_url }} | |
asset_path: pybuild/dist/${{ steps.wheel.outputs.wheel }} | |
asset_name: ${{ steps.wheel.outputs.wheel }} | |
asset_content_type: application/zip | |
manylinux-x64: | |
name: PyPI wheels for Manylinux | |
runs-on: ubuntu-latest | |
container: quay.io/pypa/manylinux${{ matrix.manylinux }}_x86_64:latest | |
env: | |
BISON_VERSION: "3.0.4-2.el7" | |
SWIG_VERSION: "3.0.12-17.el7" | |
strategy: | |
matrix: | |
manylinux: | |
- "_2_28" | |
cpython_version: | |
- "cp38-cp38" | |
- "cp39-cp39" | |
- "cp310-cp310" | |
- "cp311-cp311" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install dependencies | |
run: | | |
yum install -y flex bison-$BISON_VERSION swig3-$SWIG_VERSION cmake | |
/opt/python/${{ matrix.cpython_version }}/bin/python -m pip install auditwheel | |
- name: Build wheel | |
env: | |
QX_CPU_COMPATIBILITY_MODE: ON | |
NPROCS: 5 | |
run: | | |
/opt/python/${{ matrix.cpython_version }}/bin/python setup.py bdist_wheel | |
/opt/python/${{ matrix.cpython_version }}/bin/python -m auditwheel repair pybuild/dist/*.whl | |
- name: Wheel path | |
id: wheel | |
working-directory: wheelhouse | |
run: echo "##[set-output name=wheel;]$(ls *.whl)" | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: pypi-linux-${{ matrix.cpython_version }} | |
path: wheelhouse/${{ steps.wheel.outputs.wheel }} | |
- uses: actions/upload-release-asset@v1 | |
if: ${{ github.event_name == 'release' && github.event.action == 'created' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ github.event.release.upload_url }} | |
asset_path: wheelhouse/${{ steps.wheel.outputs.wheel }} | |
asset_name: ${{ steps.wheel.outputs.wheel }} | |
asset_content_type: application/zip | |
manylinux-arm64: | |
name: PyPI wheels for Manylinux | |
runs-on: | |
- "self-hosted" | |
- "ARM64" | |
- "Linux" | |
env: | |
BISON_VERSION: "3.0.4-2.el7" | |
SWIG_VERSION: "3.0.12-17.el7" | |
strategy: | |
matrix: | |
manylinux: | |
- "_2_28" | |
cpython_version: | |
- "cp38-cp38" | |
- "cp39-cp39" | |
- "cp310-cp310" | |
- "cp311-cp311" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install dependencies | |
run: | | |
sudo yum install -y flex bison swig cmake | |
/opt/python/${{ matrix.cpython_version }}/bin/python -m pip install auditwheel | |
- name: Build wheel | |
env: | |
QX_CPU_COMPATIBILITY_MODE: ON | |
NPROCS: 5 | |
run: | | |
/opt/python/${{ matrix.cpython_version }}/bin/python setup.py bdist_wheel | |
/opt/python/${{ matrix.cpython_version }}/bin/python -m auditwheel repair pybuild/dist/*.whl | |
- name: Wheel path | |
id: wheel | |
working-directory: wheelhouse | |
run: echo "##[set-output name=wheel;]$(ls *.whl)" | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: pypi-linux-${{ matrix.cpython_version }} | |
path: wheelhouse/${{ steps.wheel.outputs.wheel }} | |
- uses: actions/upload-release-asset@v1 | |
if: ${{ github.event_name == 'release' && github.event.action == 'created' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ github.event.release.upload_url }} | |
asset_path: wheelhouse/${{ steps.wheel.outputs.wheel }} | |
asset_name: ${{ steps.wheel.outputs.wheel }} | |
asset_content_type: application/zip | |
windows-x64: | |
name: PyPI wheels for Windows | |
runs-on: windows-latest | |
strategy: | |
matrix: | |
python: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python }} | |
- uses: actions/cache@v3 | |
with: | |
path: C:\Users\runneradmin\AppData\Local\Temp\chocolatey | |
key: ${{ runner.os }}-chocolatey-python-1 | |
restore-keys: | | |
${{ runner.os }}-chocolatey-python- | |
${{ runner.os }}-chocolatey- | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip setuptools wheel | |
choco install winflexbison3 --version 2.5.24.20210105 | |
- name: Build wheel | |
env: | |
QX_CPU_COMPATIBILITY_MODE: ON | |
NPROCS: 5 | |
run: python setup.py bdist_wheel | |
- name: Wheel path | |
id: wheel | |
working-directory: pybuild/dist/ | |
run: echo "##[set-output name=wheel;]$(Get-ChildItem -name *.whl)" | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: pypi-windows-py${{ matrix.python }} | |
path: pybuild/dist/${{ steps.wheel.outputs.wheel }} | |
- uses: actions/upload-release-asset@v1 | |
if: ${{ github.event_name == 'release' && github.event.action == 'created' }} | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
upload_url: ${{ github.event.release.upload_url }} | |
asset_path: pybuild/dist/${{ steps.wheel.outputs.wheel }} | |
asset_name: ${{ steps.wheel.outputs.wheel }} | |
asset_content_type: application/zip | |
publish: | |
name: Publish | |
if: ${{ github.event_name == 'release' && github.event.action == 'created' }} | |
needs: | |
- macos-x64 | |
- manylinux-x64 | |
- manylinux-arm64 | |
- windows-x64 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Download artifacts | |
uses: actions/download-artifact@v3 | |
id: download | |
- name: Publish to PyPI | |
uses: pypa/gh-action-pypi-publish@v1.3.1 | |
with: | |
user: __token__ | |
password: ${{ secrets.PYPI_TOKEN }} | |
packages_dir: ${{ steps.download.outputs.download-path }}/pypi-* |