name: PR Build Check

on:
  pull_request:
    branches: [main, dev]
    paths:
      - 'src/**'
      - 'examples/**'
      - 'variants/**'
      - 'platformio.ini'
      - '.github/workflows/pr-build-check.yml'
  push:
    branches: [main, dev]
    paths:
      - 'src/**'
      - 'examples/**'
      - 'variants/**'
      - 'platformio.ini'
      - '.github/workflows/pr-build-check.yml'

jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        environment:
          # ESP32-S3 (most common platform)
          - Heltec_v3_companion_radio_ble
          - Heltec_v3_repeater
          - Heltec_v3_room_server
          # nRF52
          - RAK_4631_companion_radio_ble
          - RAK_4631_repeater
          - RAK_4631_room_server
          # RP2040
          - PicoW_repeater
          # STM32
          - wio-e5-mini_repeater
          # ESP32-C6
          - LilyGo_Tlora_C6_repeater_
          # LR1110 (nRF52)
          - wio_wm1110_repeater
          # SX1276 (ESP32)
          - Tbeam_SX1276_repeater

    steps:
      - name: Clone Repo
        uses: actions/checkout@v4

      - name: Setup Build Environment
        uses: ./.github/actions/setup-build-environment

      - name: Build ${{ matrix.environment }}
        run: pio run -e ${{ matrix.environment }}
