Files
ortools-clone/.github/workflows/amd64_windows_bazel.yml
2025-11-21 16:27:05 +01:00

78 lines
2.3 KiB
YAML

# ref: https://github.com/actions/runner-images
name: amd64 Windows Bazel
on:
push:
branches:
- main
- v99bugfix
pull_request:
workflow_dispatch:
concurrency:
group: ${{github.workflow}}-${{github.ref}}
cancel-in-progress: true
env:
cache-root: '%USERPROFILE%\AppData\Local\Temp\bazel'
# Building using the github runner environement directly.
jobs:
amd64-Windows-Bazel-Python:
strategy:
matrix:
python: [
# {version: '3.10'},
# {version: '3.11'},
{version: '3.12'},
# {version: '3.13'},
# {version: '3.14'},
]
fail-fast: false # Don't cancel all jobs if one fails.
env:
cache-name: ${{github.job}}-${{matrix.python.version}}
runs-on: windows-2022
steps:
- uses: actions/checkout@v5
- uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: '17'
- name: Check java
run: java -version
- name: Check mvn
run: mvn --version
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: ${{matrix.python.version}}
- name: Check Python
run: python --version
- name: Install Bazel
run: choco install bazel
- name: Check Bazel
run: bazel version
- name: Restore bazel cache
uses: actions/cache/restore@v4
id: bazel-cache-restore
with:
key: ${{env.cache-name}}
path: ${{env.cache-root}}
- name: Build
run: bazel --output_user_root=${{env.cache-root}} build --config=ci //ortools/... //examples/...
- name: Test
run: bazel --output_user_root=${{env.cache-root}} test --config=ci //ortools/... //examples/...
- name: Save Bazel cache for branch main even when Build and Test fail.
uses: actions/cache/save@v4
# https://docs.github.com/en/actions/reference/workflows-and-actions/dependency-caching#restrictions-for-accessing-a-cache
if: always() && github.ref == 'refs/heads/main'
with:
key: ${{env.cache-name}}-${{github.sha}}
path: ${{env.cache-root}}
amd64_windows_bazel:
runs-on: ubuntu-latest
needs: amd64-Windows-Bazel-Python
steps:
- uses: actions/checkout@v5