name: Sync PR to other branches on: pull_request: types: - closed branches: - f38 jobs: sync: strategy: matrix: branch: ["f37"] fail-fast: false if: github.event.pull_request.merged == true && !contains(github.event.pull_request.labels.*.name, 'nosync') runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 0 ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }} ref: ${{ matrix.branch }} - name: Install SSH key and Setup Git run: | mkdir -p ${{ runner.temp }} echo "${{ secrets.SSH_SIGNING_KEY }}" > ${{ runner.temp }}/signing_key chmod 0700 ${{ runner.temp }}/signing_key git config --global --add safe.directory "$GITHUB_WORKSPACE" git config user.name "Raboneko" git config user.email "raboneko@fyralabs.com" git config gpg.format "ssh" git config user.signingkey "${{ runner.temp }}/signing_key" - name: Apply patches and Push run: | curl https://github.com/terrapkg/packages/pull/${{ github.event.pull_request.number }}.patch > pr.patch git am -S --keep-cr --signoff < pr.patch git push -u origin --all