blob: 88700c44c24615edf2c3d242962ec66b10ae4b9a [file] [log] [blame]
name: Build and Test with Bazel
permissions:
contents: read
on:
push:
branches:
- 'main'
pull_request:
jobs:
build:
timeout-minutes: 120
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Download dependencies
run: python3 utils/git-sync-deps
- name: Mount Bazel cache
uses: actions/cache@v3
with:
path: ~/.bazel/cache
key: bazel-cache-${{ runner.os }}
- name: Build All (Windows)
if: ${{matrix.os == 'windows-latest' }}
run: bazel --output_user_root=~/.bazel/cache build --cxxopt=/std:c++17 //...
- name: Test All (Windows)
if: ${{matrix.os == 'windows-latest' }}
run: bazel --output_user_root=~/.bazel/cache test --cxxopt=/std:c++17 //...
- name: Build All (Linux, MacOS)
if: ${{ matrix.os != 'windows-latest' }}
run: bazel --output_user_root=~/.bazel/cache build --cxxopt=-std=c++17 //...
- name: Test All (Linux, MacOS)
if: ${{ matrix.os != 'windows-latest' }}
run: bazel --output_user_root=~/.bazel/cache test --cxxopt=-std=c++17 //...