mirror of
https://code.forgejo.org/actions/git-backporting.git
synced 2025-02-22 10:35:43 -05:00
* feat: implement error notification as pr comment * Update action.yml Co-authored-by: Earl Warren <109468362+earl-warren@users.noreply.github.com> * feat: implement gitlab client and surround with try catch * docs: add error notification enablment in the doc * feat: disable comment if dry-run * feat: update the default comment on error --------- Co-authored-by: Earl Warren <109468362+earl-warren@users.noreply.github.com>
124 lines
No EOL
4 KiB
YAML
124 lines
No EOL
4 KiB
YAML
name: "Backporting GitHub Action"
|
|
description: GitHub action providing an automated way to backport pull requests from one branch to another
|
|
inputs:
|
|
pull-request:
|
|
description: >
|
|
URL of the pull request to backport, e.g., "https://github.com/kiegroup/git-backporting/pull/1"
|
|
required: false
|
|
target-branch:
|
|
description: >
|
|
Comma separated list of branches where the pull request must be backported to
|
|
required: false
|
|
target-branch-pattern:
|
|
description: >
|
|
Regular expression pattern to extract target branch(es) from pr labels.
|
|
The branches will be extracted from the pattern's required `target` named capturing group,
|
|
for instance "^backport (?<target>([^ ]+))$"
|
|
required: false
|
|
config-file:
|
|
description: >
|
|
Path to a file containing the json configuration for this tool,
|
|
the object must match the Args interface
|
|
required: false
|
|
dry-run:
|
|
description: >
|
|
If enabled the tool does not create any pull request nor push anything remotely
|
|
required: false
|
|
default: "false"
|
|
auth:
|
|
description: >
|
|
GITHUB_TOKEN or a `repo` scoped Personal Access Token (PAT),
|
|
if not provided will look for existing env variables like GITHUB_TOKEN
|
|
default: ${{ github.token }}
|
|
required: false
|
|
git-client:
|
|
description: >
|
|
Git client type <github|gitlab|codeberg>, if not set it is infered from pull-request
|
|
required: false
|
|
git-user:
|
|
description: Local git user name
|
|
default: "GitHub"
|
|
required: false
|
|
git-email:
|
|
description: Local git user email
|
|
default: "noreply@github.com"
|
|
required: false
|
|
title:
|
|
description: >
|
|
Backporting PR title. Default is the original PR title prefixed by the target branch
|
|
required: false
|
|
body-prefix:
|
|
description: >
|
|
Backporting PR body prefix. Default is `Backport: <original-pr-link>`
|
|
required: false
|
|
body:
|
|
description: >
|
|
Backporting PR body. Default is the original PR body
|
|
required: false
|
|
bp-branch-name:
|
|
description: >
|
|
Comma separated list of backporting PR branch names.
|
|
Default is auto-generated from commit and target branches
|
|
required: false
|
|
reviewers:
|
|
description: >
|
|
Comma separated list of reviewers for the backporting pull request
|
|
required: false
|
|
assignees:
|
|
description: >
|
|
Comma separated list of reviewers for the backporting pull request
|
|
required: false
|
|
no-inherit-reviewers:
|
|
description: >
|
|
Considered only if reviewers is empty, if true keep reviewers as empty list,
|
|
otherwise inherit from original pull request
|
|
required: false
|
|
default: "false"
|
|
labels:
|
|
description: >
|
|
Comma separated list of labels to be assigned to the backported pull request
|
|
required: false
|
|
inherit-labels:
|
|
description: >
|
|
If true the backported pull request will inherit labels from the original one
|
|
required: false
|
|
default: "false"
|
|
no-squash:
|
|
description: >
|
|
Backport all commits found in the pull request.
|
|
The default behavior is to only backport the first commit that was merged in the base branch.
|
|
required: false
|
|
auto-no-squash:
|
|
description: >
|
|
If the pull request was merged or is open, backport all commits.
|
|
If the pull request commits were squashed, backport the squashed commit.
|
|
required: false
|
|
strategy:
|
|
description: Cherry-pick merge strategy
|
|
required: false
|
|
default: "recursive"
|
|
strategy-option:
|
|
description: Cherry-pick merge strategy option
|
|
required: false
|
|
default: "theirs"
|
|
cherry-pick-options:
|
|
description: >
|
|
Additional cherry-pick options
|
|
required: false
|
|
comments:
|
|
description: >
|
|
Semicolon separated list of additional comments to be posted to the backported pull request
|
|
required: false
|
|
enable-err-notification:
|
|
description: >
|
|
If true, enable the error notification as comment on the original pull request
|
|
required: false
|
|
default: "false"
|
|
|
|
runs:
|
|
using: node20
|
|
main: dist/gha/index.js
|
|
|
|
branding:
|
|
icon: 'git-merge'
|
|
color: 'blue' |