Skip to content

Build PyPI packages on ubuntu-22.04 #5986

Build PyPI packages on ubuntu-22.04

Build PyPI packages on ubuntu-22.04 #5986

Workflow file for this run

name: CI Windows
on:
push:
branches:
- "**"
paths-ignore:
- "**/website/**"
pull_request:
branches:
- "**"
paths-ignore:
- "**/website/**"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
momentum:
# Disabled: Too slow for CI (use sccache on local development)
if: false
name: cpp-${{ matrix.mode == '' && 'opt' || 'dev' }}-win
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
mode: [""] # TODO: Add -dev model
env:
# Enable sccache for C++ compilation caching
CMAKE_C_COMPILER_LAUNCHER: sccache
CMAKE_CXX_COMPILER_LAUNCHER: sccache
SCCACHE_GHA_ENABLED: "true"
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Set up sccache
uses: mozilla-actions/[email protected]
- name: Set up pixi
uses: prefix-dev/[email protected]
with:
cache: true
cache-write: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
- name: Build and test Momentum
run: |
pixi run test${{ matrix.mode }}
- name: Install Momentum and Build hello_world
run: |
pixi run install
pixi run cmake `
-S momentum/examples/hello_world `
-B momentum/examples/hello_world/build
pixi run cmake `
--build momentum/examples/hello_world/build `
--config Release `
--parallel
- name: Print sccache stats
run: sccache --show-stats
pymomentum:
# Enabled: CPU-only for cost optimization (GPU disabled)
name: py-${{ matrix.pixi_env }}-win
runs-on: windows-latest
strategy:
fail-fast: false
matrix:
include:
- pixi_env: "py312"
# GPU disabled to reduce CI cost
# - pixi_env: "py312-cuda129"
# cuda_version: "12.9.0"
env:
FULL_CUDA_VERSION: ${{ matrix.cuda_version }}
# Enable sccache for C++ compilation caching
CMAKE_C_COMPILER_LAUNCHER: sccache
CMAKE_CXX_COMPILER_LAUNCHER: sccache
SCCACHE_GHA_ENABLED: "true"
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Set up sccache
uses: mozilla-actions/[email protected]
- name: Setup CUDA
if: ${{ contains(matrix.pixi_env, 'cuda') || contains(matrix.pixi_env, 'gpu') }}
uses: ./.github/actions/setup-cuda
with:
cuda-version: ${{ matrix.cuda_version }}
- name: Set up pixi
uses: prefix-dev/[email protected]
with:
cache: true
cache-write: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
- name: Build and test PyMomentum
run: |
pixi run -e ${{ matrix.pixi_env }} test_py
- name: Print sccache stats
run: sccache --show-stats