| name: Build Wheels (alt) |
| |
| on: |
| workflow_dispatch: |
| inputs: |
| os: |
| description: OS |
| required: true |
| default: ubuntu-20.04 |
| python: |
| description: Python |
| required: true |
| default: "3.10" |
| manylinux: |
| description: Manylinux |
| required: true |
| default: manylinux_2_28_x86_64 |
| archs: |
| description: CIBW_ARCHS |
| required: true |
| default: auto |
| skip: |
| description: CIBW_SKIP |
| required: true |
| default: "cp27-* pp27-*" |
| |
| jobs: |
| build_wheels: |
| name: Build compat:${{ github.event.inputs.manylinux }}, python:${{ github.event.inputs.python }}, os:${{ github.event.inputs.os }} |
| runs-on: ${{ github.event.inputs.os }} |
| |
| steps: |
| - uses: actions/checkout@v3 |
| with: |
| submodules: true |
| |
| - name: Cache pip |
| uses: actions/cache@v3 |
| with: |
| key: cache--${{ github.event.inputs.os }}--${{ github.event.inputs.python }}--${{ hashFiles('./requirements-dev.txt') }} |
| path: ~/.cache/pip |
| |
| - name: Setup python |
| uses: actions/setup-python@v4 |
| with: |
| python-version: ${{ github.event.inputs.python }} |
| |
| - name: Update pip |
| run: python -m pip install -U pip wheel setuptools |
| |
| - name: Install requirements |
| run: python -m pip install -Ur requirements-dev.txt |
| |
| - name: Install cibuildwheel |
| run: python -m pip install -U 'cibuildwheel==2.*' |
| |
| - name: Prepare for compilation |
| run: make prepare |
| |
| - name: Build wheels |
| run: python -m cibuildwheel --output-dir wheelhouse |
| env: |
| CIBW_BUILD_FRONTEND: build |
| CIBW_SKIP: "${{ github.event.inputs.skip }}" |
| CIBW_MANYLINUX_X86_64_IMAGE: "${{ github.event.inputs.manylinux }}" |
| CIBW_MANYLINUX_I686_IMAGE: "${{ github.event.inputs.manylinux }}" |
| CIBW_ARCHS: ${{ github.event.inputs.archs }} |
| |
| - name: Store artifacts |
| uses: actions/upload-artifact@v3 |
| with: |
| name: Wheelhouse |
| path: ./wheelhouse/*.whl |