Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

proteusklogan/github-comment-counter

Open more actions menu
 
 

Repository files navigation

github-comment-counter Build Status

A dropwizard-based server displaying number of Pull Request Comments performed by an organization's GitHub users, to help organizations identify and celebrate top reviewers. Counts all recent in-code comments on organization's opened and closed Pull Requests, excluding comments on one's own Pull Requests. Queries GitHub API every X minutes and displays the result.

Live Demo: GitHub Organization's Top Reviewers

alt tag

Deployment

There are three deployment options:

  1. Using Heroku: if you have a Heroku account, that's the easiest way, skip to Heroku Deployment
  2. Downlowding latest release: download latest jar and yml file from releases page, and continue to Usage section
  3. Build from source code, then continue to Usage section

Usage

Edit the leaderboard-server.yml file with the following configuration:

gitHubCredentials:
    # change these to any valid github credentials; requires
    # either a username/password combination or a token
    username: my-user
    password: my-pass
    token: my-oauth-token

organization: my-org    # organization to show stats for
refreshRateMinutes: 10  # interval between API activations

Specify either a token or a username and password.

You're now ready to run the server:

java -jar <path to jar> server <path to yml file>

You should be able to see the results at http://<host>:8080/

If you're using a locally-hosted GitHub instance, you can override the default API endpoint URL by adding something like this to your yml file:

gitHubApiUrl: https://github.corp.xyzcompany.com/api/v3/

Build

To build the artifact (without running tests), run:

./gradlew fatJar

The jar to use is located in leaderboard-server/build/libs/.

To run the tests, you'll need to supply credentials, since some of the tests require a github user to activate the API. Here and elsewhere, you can either pass your GitHub username and password as credentials or pass a single OAuth token associated with your account.

./gradlew clean build -Dusername=<a github user> -Dpassword=<her password> -Dtoken=<an OAuth token>

(If your user account has two-factor authentication enabled, only token-based access will work.)

Heroku Deployment

NOTE: Heroku-deployed web servers are public by default, so use wisely, or choose another deployment method if you wish to keep your commenters/comments private.

Assuming you have a Heroku account, and Heroku toolbelt installed, run this from the project root to build, deploy, and run the application:

heroku login  # type user and password when prompted...
heroku create 
heroku config:set ORG_NAME=<your org name>
heroku config:set GH_USER=<username>  # skip if using token
heroku config:set GH_PASS=<password>  # skip if using token
heroku config:set GH_TOKEN=<token>    # skip if using user+password
git push heroku master  # this will take a while...
heroku open

The last command should open the app page in your default browser.

About

A tool for counting Pull Request Review Comments performed by an organization's GitHub users

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • Java 97.2%
  • HTML 2.8%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.