name: build

on:
  pull_request:

  push:
    branches:
      - main

  workflow_dispatch:

permissions:
  contents: none

jobs:

  compatibility:
    strategy:
      fail-fast: false
      matrix:
        go-version: [^1.22.x]
        platform: [ubuntu-latest]

    runs-on: ${{ matrix.platform }}
    steps:
      - name: Checkout
        uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
      - name: Setup Go
        uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
        with:
          go-version: ${{ matrix.go-version }}

      - name: Run Verify
        run: make verify

      - name: Run Cross Build
        run: make cross-build