v0.1.64-rc2 #82
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 Release | |
| on: | |
| release: | |
| types: [published] | |
| workflow_dispatch: # Manual trigger for testing builds | |
| permissions: | |
| contents: write | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| - name: Build wheels | |
| uses: PyO3/maturin-action@v1 | |
| with: | |
| target: x86_64 | |
| args: --release --out dist -i python3.10 python3.11 python3.12 python3.13 | |
| manylinux: auto | |
| before-script-linux: | | |
| # numactl for libnuma | |
| yum install -y numactl-devel 2>/dev/null || dnf install -y numactl-devel 2>/dev/null || apt-get install -y libnuma-dev 2>/dev/null || true | |
| # CUDA toolkit for nvcc (decode kernels compiled to PTX at build time) | |
| # build.rs checks /usr/local/cuda-12.6/bin/nvcc directly | |
| if [ ! -f /usr/local/cuda-12.6/bin/nvcc ]; then | |
| yum install -y yum-utils 2>/dev/null || true | |
| yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo 2>/dev/null || \ | |
| dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo 2>/dev/null || true | |
| yum install -y --nogpgcheck cuda-nvcc-12-6 cuda-cudart-devel-12-6 2>/dev/null || \ | |
| dnf install -y --nogpgcheck cuda-nvcc-12-6 cuda-cudart-devel-12-6 2>/dev/null || true | |
| ls -la /usr/local/cuda-12.6/bin/nvcc 2>/dev/null && echo "nvcc installed OK" || echo "WARNING: nvcc install failed" | |
| fi | |
| - name: Build sdist | |
| uses: PyO3/maturin-action@v1 | |
| with: | |
| command: sdist | |
| args: --out dist | |
| - name: Upload release assets | |
| if: github.event_name == 'release' | |
| env: | |
| GH_TOKEN: ${{ github.token }} | |
| run: gh release upload "${{ github.event.release.tag_name }}" dist/* --clobber | |
| - name: Upload artifacts (CI debugging) | |
| if: github.event_name != 'release' | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: dist | |
| path: dist |