| name: CI |
| on: |
| push: |
| branches: [main] |
| pull_request: |
| branches: [main] |
| |
| concurrency: |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} |
| cancel-in-progress: true |
| |
| jobs: |
| test: |
| strategy: |
| matrix: |
| folder: [".", "examples/module", "examples/workspace"] |
| version: ["7.1.0", "8.0.0rc1"] |
| os: ["ubuntu-latest", "windows-latest"] |
| runs-on: ${{ matrix.os }} |
| steps: |
| - uses: actions/checkout@v4 |
| - uses: bazel-contrib/setup-bazel@0.12.1 |
| with: |
| repository-cache: true |
| bazelrc: common --announce_rc --color=yes --enable_workspace |
| - name: Configure Bazel version |
| working-directory: ${{ matrix.folder }} |
| run: | |
| echo "${{ matrix.version }}" > .bazelversion |
| bazel version |
| - name: Build |
| working-directory: ${{ matrix.folder }} |
| run: bazel build ... |
| - name: Test |
| working-directory: ${{ matrix.folder }} |
| run: bazel test ... |
| |
| integration-tests: |
| runs-on: ubuntu-latest |
| steps: |
| - uses: actions/checkout@v4 |
| - working-directory: examples/workspace |
| run: ./minimal_download_test.sh |