| name: CI |
| |
| # Controls when the action will run. |
| on: |
| # Triggers the workflow on push or pull request events but only for the main branch |
| push: |
| branches: [main] |
| pull_request: |
| branches: [main] |
| # Allows you to run this workflow manually from the Actions tab |
| workflow_dispatch: |
| |
| concurrency: |
| # Cancel previous actions from the same PR or branch except 'main' branch. |
| # See https://docs.github.com/en/actions/using-jobs/using-concurrency and https://docs.github.com/en/actions/learn-github-actions/contexts for more info. |
| group: concurrency-group::${{ github.workflow }}::${{ github.event.pull_request.number > 0 && format('pr-{0}', github.event.pull_request.number) || github.ref_name }}${{ github.ref_name == 'main' && format('::{0}', github.run_id) || ''}} |
| cancel-in-progress: ${{ github.ref_name != 'main' }} |
| |
| jobs: |
| test: |
| uses: bazel-contrib/.github/.github/workflows/bazel.yaml@v6 |
| with: |
| folders: | |
| [ |
| ".", |
| "e2e/smoke" |
| ] |
| exclude: | |
| [ |
| {"folder": ".", "bzlmodEnabled": false} |
| ] |
| # For branch protection settings, this job provides a "stable" name that can be used to gate PR merges |
| # on "all matrix jobs were successful". |
| conclusion: |
| needs: test |
| runs-on: ubuntu-latest |
| if: always() |
| steps: |
| - uses: technote-space/workflow-conclusion-action@45ce8e0eb155657ab8ccf346ade734257fd196a5 # v3.0.3 |
| |
| # Note: possible conclusion values: |
| # https://github.com/technote-space/workflow-conclusion-action/blob/main/src/constant.ts |
| - name: report success |
| if: ${{ env.WORKFLOW_CONCLUSION == 'success' }} |
| working-directory: /tmp |
| run: echo ${{ env.WORKFLOW_CONCLUSION }} && exit 0 |
| |
| - name: report failure |
| if: ${{ env.WORKFLOW_CONCLUSION == 'failure' }} |
| working-directory: /tmp |
| run: echo ${{ env.WORKFLOW_CONCLUSION }} && exit 1 |