| 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-2019] |
| |
| runs-on: ${{matrix.os}} |
| |
| steps: |
| - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # v3.6.0 |
| with: |
| fetch-depth: '0' |
| - name: Download dependencies |
| run: python3 utils/git-sync-deps |
| - name: Mount Bazel cache |
| uses: actions/cache@704facf57e6136b1bc63b828d79edcd491f0ee84 # v3.3.2 |
| with: |
| path: ~/.bazel/cache |
| key: bazel-cache-${{ runner.os }} |
| - name: Build All |
| run: bazel --output_user_root=~/.bazel/cache build //... |
| - name: Test All |
| run: bazel --output_user_root=~/.bazel/cache test //... |