name: "Update protobufs and regenerate classes"
on: workflow_dispatch

jobs:
  update-protobufs:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout code
        uses: actions/checkout@v3
        with:
          submodules: true

      - name: Update submodule
        run: |
          git submodule update --remote protobufs

      - name: Download nanopb
        run: |
          wget https://jpa.kapsi.fi/nanopb/download/nanopb-0.4.8-linux-x86.tar.gz
          tar xvzf nanopb-0.4.8-linux-x86.tar.gz
          mv nanopb-0.4.8-linux-x86 nanopb-0.4.8

      - name: Re-generate protocol buffers
        run: |
          ./bin/regen-protos.sh

      - name: Create pull request
        uses: peter-evans/create-pull-request@v3
        with:
          add-paths: |
            protobufs
            src/mesh
