name: Proto generate check

on:
  workflow_dispatch:
  push:
    branches:
      - main
      - "release/**"
    paths:
      - "**.proto"
      - ".github/workflows/test-proto.yml"
      - "proto/Dockerfile.gen-proto"
  pull_request:
    paths:
      - "**.proto"
      - ".github/workflows/test-proto.yml"
      - "proto/Dockerfile.gen-proto"

jobs:
  go-generate:
    runs-on: ubuntu-22.04
    steps:
      - name: Checkout
        uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # v3.3.0
        with:
          ref: ${{ !github.event.pull_request.head.repo.fork && github.head_ref || '' }}

      - name: Generate proto
        shell: bash
        working-directory: proto
        env:
          DOCKER_BUILDKIT: 1
        run: |
          docker build -o .. -f Dockerfile.gen-proto ..
          git diff --exit-code