test build wheels #1
Workflow file for this run
This file contains hidden or 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: Build | |
| on: [push, pull_request] | |
| jobs: | |
| build_wheels: | |
| name: Build wheels on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, ubuntu-24.04-arm] | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Install cibuildwheel | |
| run: python -m pip install cibuildwheel==3.1.4 | |
| - name: Build wheels (compile-only, CUDA 12.9) | |
| env: | |
| # Which Python/ABI wheels to build | |
| CIBW_BUILD: "cp3{9,10,11,12}-manylinux_{x86_64,aarch64}" | |
| CIBW_SKIP: "pp* *-musllinux* *-win* *-macosx*" | |
| # Point cibuildwheel to custom manylinux images with CUDA 12.9 | |
| CIBW_MANYLINUX_X86_64_IMAGE: "ghcr.io/OWNER/REPO:manylinux_2_28_x86_64_cuda12.9" | |
| CIBW_MANYLINUX_AARCH64_IMAGE: "ghcr.io/OWNER/REPO:manylinux_2_28_aarch64_cuda12.9" | |
| # Make CUDA visible in the container | |
| CIBW_ENVIRONMENT: > | |
| CUDA_HOME=/usr/local/cuda | |
| LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH | |
| PATH=/usr/local/cuda/bin:$PATH | |
| # Ensure build tooling for nanobind extension is present | |
| CIBW_BEFORE_BUILD: > | |
| python -m pip install -U pip | |
| scikit-build-core cmake ninja nanobind | |
| # Compile-only: don’t run runtime tests (needs GPU) | |
| CIBW_TEST_SKIP: "*" | |
| CIBW_TEST_COMMAND: "" | |
| # Let auditwheel check manylinux tags and bundle CUDA libs | |
| # (set to "" to go faster if you only want compile proof) | |
| CIBW_REPAIR_WHEEL_COMMAND: "auditwheel repair -w {dest_dir} {wheel}" | |
| # Show compiler/linker commands | |
| CIBW_BUILD_VERBOSITY: "1" | |
| run: python -m cibuildwheel --output-dir wheelhouse | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }} | |
| path: ./wheelhouse/*.whl |