# Copyright 2022 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

name: Centipede Bazel Test

on:
  push:
    branches:
      - main
    paths:
      - 'centipede/**'
  pull_request:
  workflow_dispatch:

jobs:
  run_tests:
    name: Run Centipede tests
    runs-on: ubuntu-latest
    timeout-minutes: 30
    steps:
      - name: Checkout repository
        uses: actions/checkout@v3
      - name: Run all Centipede tests
        run: |
          env OUTPUT_ARTIFACTS_DIR="$HOME/.output_artifacts" \
            ./centipede/run_test_workflow.sh
      - name: Upload output artifacts
        # Always upload test artifacts, unless the job is cancelled.
        if: ${{ !cancelled() }}
        uses: actions/upload-artifact@v3
        with:
          name: output-artifacts
          path: "~/.output_artifacts/"
