Add Windows build jobs to CI #51
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: | |
| branches: | |
| - main | |
| pull_request: | |
| types: [opened, reopened, synchronize] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: | |
| ["ubuntu-22.04", "windows-2025"] | |
| # "ubuntu-24.04" # Postponed as long as testing against CUDA 12.1, needs 12.6+ | |
| python: ["3.9", "3.10", "3.11", "3.12", "3.13"] | |
| name: "${{ matrix.os }} / Python ${{ matrix.python }}" | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Free Disk Space (Ubuntu) | |
| uses: jlumbroso/free-disk-space@main | |
| with: | |
| tool-cache: false | |
| android: true | |
| dotnet: true | |
| haskell: true | |
| large-packages: false | |
| docker-images: false | |
| swap-storage: false | |
| - name: Set up Python ${{ matrix.python }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python }} | |
| cache: "pip" | |
| - name: Set up CUDA toolkit (Ubuntu) | |
| if: runner.os == 'Linux' | |
| uses: Jimver/cuda-toolkit@master | |
| with: | |
| cuda: "12.1.0" | |
| method: "network" | |
| sub-packages: '["toolkit"]' | |
| - name: Set up CUDA toolkit (Windows) | |
| if: runner.os == 'Windows' | |
| uses: Jimver/cuda-toolkit@master | |
| with: | |
| cuda: "12.8.1" | |
| method: "network" | |
| use-github-cache: false | |
| - name: Install torch with CUDA support (Ubuntu) | |
| if: runner.os == 'Linux' | |
| run: python -m pip install torch --index-url https://download.pytorch.org/whl/cu121 | |
| - name: Install torch with CUDA support (Windows) | |
| if: runner.os == 'Windows' | |
| run: python -m pip install torch --index-url https://download.pytorch.org/whl/cu128 | |
| - name: Install torchhull | |
| run: python -m pip install --editable ".[dev]" | |
| - name: Run compilation | |
| run: nox --no-venv -s build | |
| check_build: | |
| if: always() | |
| needs: | |
| - build | |
| name: "Check Build" | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: re-actors/alls-green@release/v1 | |
| with: | |
| jobs: ${{ toJSON(needs) }} |