An open source tool to help code reviewer's to focus on what's important by reminding the developper to check for obvious things first.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
db
src
views
web
.gitignore
README.md
bower.json
composer.json
composer.lock

README.md

PRReviewWatcher

Scrutinizer Code Quality Latest Stable Version Total Downloads Latest Unstable Version License

  1. What the purpose of this project ?
  2. Screenshots
  3. How to install the project
  4. Configuration
  5. Security
  6. Credential
  7. Project
  8. Vhost

Native Github Support

A few month ago, Github released a new feature that supports pull request templates. You should checkout the Documentation and see if it suits your need.

What the purpose of this project ?

The PR Review Watcher will post a list of checks you've defined as a Pull Request comment when a new pull request is created

The project can save you time when it comes to pull request reviews:

  • avoid common pitfall/mistakes a developer can make
  • make sure the developper has reviewed his own code

The list of checks are fully customizable. No github credential's needed (just tokens, which are more secure).

Screenshots

Example webinterface

Example markdown editor

Example pull request comment

How to install the project

Simply install the project via composer: composer require yproximite/pr-review-watcher

Configuration

Security

Enter your desired login/sha1 password inside the file config/config.yml (cp config/config.yml.example to config/config.yml in order to access to the application.

You can generate your sha1 password at sha1.

Credential

First of all, you'll need a Github Token in order to post comments.

Check out the GitHub documentation to see how to create one.

Project

Then you add a project you want to hook into. Configure Github webhook by following this example :

  • Inside your GitHub project, go to settings then to webhooks & services.
  • Enter the url of the application + /api Example : https://[url_of_the_application]/api, select application/json and choose only the event Pull Request.

You can configure when to post comment on new pull request:

  • Post a checklist on a pull request only if it's opened against develop branch: enter "develop" in the field configured branches
  • Post a checklist on a pull request opened against all branches: enter "all"

Vhost

nginx example:

server {
	listen	80;
	server_name your.domain.name;
 
	access_log	/var/log/nginx/pr_watcher.access.log;
	error_log	/var/log/nginx/pr_watcher.error.log;
 
	root path/of/project/web;
	index index.php;

	location ~ /\.ht {
		deny all;
	}

	location ~ \.php$ {
		fastcgi_index index.php;
   	 	fastcgi_split_path_info ^(.+\.php)(.*)$;
   		include fastcgi_params;
    	fastcgi_pass unix:/var/run/php5-fpm.sock;
   		fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;	
 	}

	location / { 
        try_files $uri $uri/ /index.php?$query_string;
    }
}