| 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/multiple-inputs", "examples/typical"] |
| version: ["7.1.0", "8.0.0"] |
| os: ["ubuntu-latest"] |
| runs-on: ${{ matrix.os }} |
| steps: |
| - uses: actions/checkout@v5 |
| - uses: bazel-contrib/setup-bazel@0.15.0 |
| with: |
| repository-cache: true |
| bazelrc: common --announce_rc --color=yes |
| - 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 ... |
| - name: Run examples/typical |
| working-directory: "examples/typical" |
| run: | |
| set -e |
| bazel run //:create-venv |
| bazel run //:create-venv-custom-destination |
| bazel run //:sync-venv-custom-destination |
| - name: Run examples/multiple-inputs |
| working-directory: "examples/multiple-inputs" |
| run: | |
| set -e |
| bazel run //:create-venv |