git-merge-pr
git-merge-pr merges an open pull request. This step commonly follows a
git-open-pr step.
Configuration
| Name | Type | Required | Description | 
|---|---|---|---|
| repoURL | string | Y | The URL of a remote Git repository. | 
| provider | string | N | The name of the Git provider to use. Currently azure,bitbucket,gitea,github, andgitlabare supported. Kargo will try to infer the provider if it is not explicitly specified. | 
| insecureSkipTLSVerify | boolean | N | Indicates whether to bypass TLS certificate verification when interfacing with the Git provider. Setting this to trueis highly discouraged in production. | 
| prNumber | integer | Y | The pull request number to merge. | 
| wait | boolean | N | If true, the step will return a running status instead of failing when the PR is not yet mergeable. The merge will be retried on the next reconciliation until it succeeds or times out. Default isfalse. | 
warning
The wait option is unreliable for repositories hosted by Bitbucket due to API limitations.
Output
| Name | Type | Description | 
|---|---|---|
| commit | string | The ID (SHA) of the merge commit created after successfully merging the pull request. Typically, a subsequent argocd-updatestep will reference this output to learn the ID of the commit that an applicable Argo CDApplicationSourceshould be observably synced to under healthy conditions. | 
Examples
Basic Usage
In this example, a pull request is merged immediately if it's ready. If the pull request is not ready to merge (e.g., due to pending checks or conflicts), the step will fail.
steps:
- uses: git-merge-pr
  config:
    repoURL: https://github.com/example/repo.git
    prNumber: 42
Merge with Wait
This example demonstrates merging a pull request with waiting enabled. If the pull request is not immediately ready to merge, the step will return a running status and Kargo will retry it later.
steps:
- uses: git-merge-pr
  config:
    repoURL: https://github.com/example/repo.git
    prNumber: 42
    wait: true