Skip to content

.

. #83

Workflow file for this run

name: Build Wheels
on:
push:
branches:
- wheel-test
- wheel-test2
pull_request:
branches:
- wheel-test
- wheel-test2
workflow_dispatch:
jobs:
build-wheels:
name: Build wheels (${{ matrix.platform.os }} ${{ matrix.platform.arch }} ${{ matrix.python }})
runs-on: ${{ matrix.platform.os }}
strategy:
fail-fast: true
matrix:
python: [ cp311, cp312, cp313, cp314 ]
platform:
- { os: ubuntu-24.04, arch: x86_64, cibw_system: manylinux }
- { os: ubuntu-24.04-arm, arch: aarch64, cibw_system: manylinux }
- { os: macos-15, arch: arm64, cibw_system: macosx }
# Optional: all jobs should pass
continue-on-error: true
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Checkout quickfix code
uses: actions/checkout@v4
with:
repository: pablodcar/quickfix
ref: master
path: quickfix
- name: workaround for setup-python # setup-python expects a requirments.txt
run: |
touch requirements.txt
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
cache: pip
- name: Upgrade pip & build tools
run: |
python -m pip install --upgrade pip
python -m pip install build setuptools wheel
- name: Build wheel
run: |
./build.sh
- name: Build wheels
uses: pypa/cibuildwheel@v3.3.1
with:
package-dir: quickfix-py
env:
CIBW_BUILD: '{matrix.python}-*'
CIBW_ARCHS: ${{ matrix.platform.arch == 'amd64' && 'AMD64' || matrix.platform.arch }}
CIBW_TEST_COMMAND: >
python -c "import quickfix"
- uses: actions/upload-artifact@v4
with:
name: wheel-${{ matrix.python }}-${{ matrix.platform.cibw_system }}_${{ matrix.platform.arch }}
path: wheelhouse/*.whl