name: Heavy Tests

on: # rebuild any PRs and main branch changes
  pull_request:
  push:
    branches:
      - master

concurrency:
  group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
  cancel-in-progress: true

jobs:
  build-and-test:
    timeout-minutes: 20
    runs-on: ubuntu-latest-16-cores
    steps:
      - uses: actions/checkout@v4
        with:
          submodules: recursive
      - uses: dtolnay/rust-toolchain@stable
        with:
          toolchain: 1.90.0
      - name: Install protoc
        uses: arduino/setup-protoc@v3
        with:
          # TODO: Upgrade proto once https://github.com/arduino/setup-protoc/issues/99 is fixed
          version: '23.x'
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - run: cargo integ-test -c "--release" -t heavy_tests -- --test-threads 1
