Skip to content
This repository has been archived by the owner on Mar 14, 2024. It is now read-only.

Pullapprove

Sam Thorogood edited this page Oct 13, 2021 · 2 revisions

Pullapprove is a GitHub app that we pay for that lets us define owners for content areas. These owners can approve PRs which will then unlock the merge button.

Users and teams

You can configure pullapprove to either use individuals or github teams for approvers. The magic of pullapprove is that you can also use a tilde (~) to silently mark a person or group as an approver. If someone is added to a pullapprove group in this way, then they can approve a PR, but they won't be automatically assigned as a reviewer in GitHub (which cuts down on email spam).

Conditions

Pullapprove has a number of conditions that you can use to define when a PR should match a particular group of reviewers.

Example group

The Learn CSS group will be tagged in if a PR modifies a file in any of these locations. It says that Una and Adam should always be assigned as the code reviewers. It also says that the web-dev-content, web-dev-eng, and web-dev-approvers teams can silently approve the PR.

Debugging

When a PR is created, you can click the Details link next to the pullapprove check to see who needs to approve the PR (screenshot). Clicking on the Debug tab in this view can give you a lot of useful information about why a certain group was (or wasn't) tagged in to review a PR.

Pullapprove also has a guide on debugging. If you need to test the pullapprove config you can:

  • Create a new PR that modifies a file.
  • Leave a PR Review comment (screenshot). In the PR Review comment, paste the contents of the .pullapprove.yml file for the site into the code block. (note the file I just linked to was for web.dev. Make sure you're including the right file if you're trying to debug developer.chrome.com).
  • Submit the comment and look at the pullapprove details to figure out which group of reviewers should be assigned.
Clone this wiki locally