name: Automatic backport/sync action
permissions:
  contents: read
on:
  pull_request_target:
    types: ["labeled", "closed"]

jobs:
  backport:
    permissions:
      contents: write
      pull-requests: write
    name: Backport/sync PR
    runs-on: ubuntu-22.04
    if: github.event.pull_request.merged
    steps:
      - name: Install SSH signing key
        run: |
          mkdir -p ${{ runner.temp }}
          echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key
          chmod 0700 ${{ runner.temp }}/signing_key

      - name: Setup Raboneko Signing
        run: |
          git config --global gpg.format "ssh"
          git config --global user.signingkey "${{ runner.temp }}/signing_key"
          git config --global commit.gpgsign true

      - name: Backport Action
        uses: sorenlouv/backport-github-action@85813678d776774a19ec5af56bd3a04305946f8a # v12.0.0
        with:
          github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }}
          auto_backport_label_prefix: sync-

      - name: Info log
        if: ${{ success() }}
        run: cat ~/.backport/backport.info.log

      - name: Debug log
        if: ${{ failure() }}
        run: cat ~/.backport/backport.debug.log
