Skip to content

Latest commit

 

History

History
137 lines (113 loc) · 8.63 KB

README.md

File metadata and controls

137 lines (113 loc) · 8.63 KB

GitHub Pull Request

All Contributors

A GitHub Action for creating pull requests.

Features

  • Create pull requests
  • Add reviewers, assignees, labels, or milestones
  • Customize pull request title and body
  • Fail silently when a pull request already exists

Usage

GitHub Actions

# File: .github/workflows/pull-request.yml

on:
  push:
    branches:
    - feature-1

jobs:
  pull-request:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: pull-request
      uses: repo-sync/pull-request@v2
      with:
        destination_branch: "main"
        github_token: ${{ secrets.GITHUB_TOKEN }}

This will automatically create a pull request from feature-1 to main.

Advanced options

on:
  push:
    branches:
    - "feature/*"  # Support wildcard matching

jobs:
  pull-request:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: pull-request
      uses: repo-sync/pull-request@v2
      with:
        source_branch: ""                                 # If blank, default: triggered branch
        destination_branch: "master"                      # If blank, default: master
        pr_title: "Pulling ${{ github.ref }} into master" # Title of pull request
        pr_body: ":crown: *An automated PR*"              # Full markdown support, requires pr_title to be set
        pr_template: ".github/PULL_REQUEST_TEMPLATE.md"   # Path to pull request template, requires pr_title to be set, excludes pr_body
        pr_reviewer: "wei,worker"                         # Comma-separated list (no spaces)
        pr_assignee: "wei,worker"                         # Comma-separated list (no spaces)
        pr_label: "auto-pr"                               # Comma-separated list (no spaces)
        pr_milestone: "Milestone 1"                       # Milestone name
        pr_draft: true                                    # Creates pull request as draft
        pr_allow_empty: true                              # Creates pull request even if there are no changes
        pr_merge_branch: "merge-branch"                   # Branch to create to attempt a rebase and create a pull request from
        pr_rebase_strat: "-X theirs"                         # rebase strategy, one of "theirs", "ours", "merge".  Adds "-X <strategy>" to git rebase command
        github_token: ${{ secrets.GITHUB_TOKEN }}

Outputs

The following outputs are available: pr_url, pr_number, has_changed_files ("true"|"false").

on:
  push:
    branches:
    - feature-1

jobs:
  pull-request:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: pull-request
      id: open-pr
      uses: repo-sync/pull-request@v2
      with:
        destination_branch: "main"
        github_token: ${{ secrets.GITHUB_TOKEN }}
    - name: output-url
      run: echo ${{steps.open-pr.outputs.pr_url}}
    - name: output-number
      run: echo ${{steps.open-pr.outputs.pr_number}}
    - name: output-has-changed-files
      run: echo ${{steps.open-pr.outputs.has_changed_files}}

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Wei He

💻 📖 🎨 🤔

Zeke Sikelianos

📖 🤔

Gobius Dolhain

💻

James Netherton

💻

Krzysztof Szyper

💻

Michał Koza

💻

Tonye Jack

📖

James M. Greene

💻

simon3000

🐛 💻

Pablo Barrenechea

🐛 💻

Atsushi Watanabe

🐛 💻

Christopher Keele

💻

Rachael Sewell

💻

TheKoenig

💻

This project follows the all-contributors specification. Contributions of any kind welcome!