# NOTE: Integration tests are part of a separate workflow so we can re-run just
# this workflow on failure
name: Integration Tests

on:
  push:
    branches:
      - trunk
  pull_request:
    branches:
      - trunk
  schedule:
    - cron: '0 1 * * *'

permissions:
  actions: write  # Needed for skip-duplicate-jobs job
  contents: read

jobs:
  # Special job which skips duplicate jobs
  pre_job:
    name: Skip Duplicate Jobs Pre Job
    runs-on: ubuntu-latest
    # Map a step output to a job output
    outputs:
      should_skip: ${{ steps.skip_check.outputs.should_skip }}
    steps:
      - name: Checkout code
        uses: actions/checkout@master
        with:
          persist-credentials: false
          submodules: recursive

      - id: skip_check
        # NOTE: We store action as submodule since ASF doesn't allow directly referencing external
        # actions
        uses: ./.github/actions/skip-duplicate-actions # v4.0.0
        with:
          cancel_others: 'true'
          github_token: ${{ github.token }}

  integration_tests:
    name: Run Integration Tests
    runs-on: ubuntu-latest
    timeout-minutes: 15

    needs: pre_job
    if: ${{ needs.pre_job.outputs.should_skip == 'false' || github.ref == 'refs/heads/trunk' }}

    strategy:
      matrix:
        python_version: [3.8]

    steps:
      - uses: actions/checkout@master
        with:
          fetch-depth: 1

      - name: Use Python ${{ matrix.python_version }}
        uses: actions/setup-python@v4
        with:
          python-version: ${{ matrix.python_version }}

      - name: Install OS / deb dependencies
        run: |
          sudo DEBIAN_FRONTEND=noninteractive apt-get update
          sudo DEBIAN_FRONTEND=noninteractive apt-get install -yq gcc libvirt-dev

      - name: Cache Python Dependencies
        uses: actions/cache@v3
        with:
          path: ~/.cache/pip
          key: ${{ runner.os }}-pip-${{ hashFiles('requirements-tests.txt', 'integration/storage/requirements.txt') }}
          restore-keys: |
            ${{ runner.os }}-pip-

      - name: Install Python Dependencies
        run: |
          pip install "tox==4.1.2"

      - name: Run tox target
        run: |
          script -e -c "tox -e integration-storage"
        env:
          AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }}
          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
          AWS_ACCESS_KEY_SECRET: ${{ secrets.AWS_ACCESS_KEY_SECRET }}
