# Copyright (c) HashiCorp, Inc. # SPDX-License-Identifier: MPL-2.0 # This action creates downstream PRs for PRs with backport labels defined. # See docs here: https://github.com/hashicorp/backport-assistant name: Backport Assistant Runner on: pull_request_target: types: - closed - labeled branches: - main - 'release/*.*.x' jobs: backport: if: github.event.pull_request.merged runs-on: ubuntu-latest container: hashicorpdev/backport-assistant:0.3.3 steps: - name: Run Backport Assistant for release branches run: | backport-assistant backport -merge-method=squash -gh-automerge env: BACKPORT_LABEL_REGEXP: "backport/(?P\\d+\\.\\d+)" BACKPORT_TARGET_TEMPLATE: "release/{{.target}}.x" GITHUB_TOKEN: ${{ secrets.ELEVATED_GITHUB_TOKEN }} handle-failure: needs: - backport if: always() && needs.backport.result == 'failure' runs-on: ubuntu-latest steps: - name: Comment on PR run: | github_message="Backport failed @${{ github.event.sender.login }}. Run: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" curl -s -H "Authorization: token ${{ secrets.PR_COMMENT_TOKEN }}" \ -X POST \ -d "{ \"body\": \"${github_message}\"}" \ "https://api.github.com/repos/${GITHUB_REPOSITORY}/pull/${{ github.event.pull_request.number }}/comments"