Automatically ask for a PR review
Clone or download

README.md

Pester

Deploy

Circle CI

Code Climate

What is Pester?

Pester is a tool to help with getting pull request reviews. Once you have set up Pester on your repo, new pull requests will be posted to Pester according to their tags. These tags will also be used to determine which Slack room Pester will post to.

If the PR does not have a "Sign off" of "LGTM", it will be reposted to the same rooms again after 30 minutes. The time threshold to repost can be configured using the ENV var, REPOST_THRESHOLD.

To make sure your PR goes to the correct place, your PR description should include tags like #rails #javascript #design. Pester will parse and send to all the appropriate rooms!

Pester also provides a web interface that allows you to view open PRs for your group and filter them by tag. This makes it very easy to grab a pull request in your downtime for whatever tag you prefer.

Authentication

Pester uses GitHub teams for controlling access to the web interface. When setting up the app, you should set the GITHUB_TEAM_ID environment variable to the team id that will have access.

There is no User model and users are not tracked in anyway.

While creating a new app in the GitHub, you should specify the following url as an application callback url:

https://<your-host>/auth/githubteammember/callback

The easiest way to get the GITHUB_TEAM_ID is to use the GitHub API:

% curl -H "Authorization: token <your-authorization-token>" https://api.github.com/orgs/<your-organization>/teams

The authorization token can be created on this GitHub page.

Local Development

After you have cloned this repo, run this setup script to set up your machine with the necessary dependencies to run and test this app:

% ./bin/setup

It assumes you have a machine equipped with Ruby, Postgres, etc. If not, set up your machine with this script.

After setting up, you can run the application using foreman:

% foreman start

If you don't have foreman, see Foreman's install instructions. It is purposefully excluded from the project's Gemfile.

Contributing

See the CONTRIBUTING document. Thank you, contributors!

Guidelines

Use the following guides for getting things done, programming well, and programming in style.

License

Pester is Copyright (c) 2015 thoughtbot, inc. It is free software, and may be redistributed under the terms specified in the LICENSE file.

About

Pester is maintained by Jason Draper, Christian Reuter, and Melissa Xie.

thoughtbot

Pester is maintained and funded by thoughtbot, inc. The names and logos for thoughtbot are trademarks of thoughtbot, inc.

We love open source software! See our other projects or hire us to help build your product.