name: backport on: pull_request_target: types: [closed, labeled] permissions: contents: read jobs: pull-request: runs-on: ubuntu-latest permissions: contents: write pull-requests: write if: github.event.pull_request.state == 'closed' && github.event.pull_request.merged && (github.event_name != 'labeled' || startsWith('backport:', github.event.label.name)) steps: - name: Checkout uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 with: ref: ${{ github.event.pull_request.head.sha }} - name: Create backport PRs uses: korthout/backport-action@be567af183754f6a5d831ae90f648954763f17f5 # v3.1.0 # xref: https://github.com/korthout/backport-action#inputs with: # Use token to allow workflows to be triggered for the created PR github_token: ${{ secrets.BOT_GITHUB_TOKEN }} # Match labels with a pattern `backport:` label_pattern: '^backport:([^ ]+)$' # A bit shorter pull-request title than the default pull_title: '[${target_branch}] ${pull_title}' # Simpler PR description than default pull_description: |- Automated backport to `${target_branch}`, triggered by a label in #${pull_number}.