FormidableLabs/pull-report

Name: pull-report

Owner: Formidable

Description: Create reports for open GitHub pull requests / issues for organizations and users.

Created: 2013-08-14 20:08:59.0

Updated: 2017-12-07 04:53:36.0

Pushed: 2017-08-16 17:21:35.0

Homepage:

Size: 51

Language: JavaScript

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

Travis Status

Pull Request / Issue Reporter

Create reports for open GitHub pull requests / issues for organizations and users.

Installation

You can install with NPM:

m install -g pull-report
Usage

pull-report can retrieve all open pull requests / issues for 1+ GitHub organizations and optionally filter by a user list.

ll-report --help

age: pull-report [options]

tions:

-h, --help            output usage information
-V, --version         output the version number
-o, --org [orgs]      Comma-separated list of 1+ organizations
-u, --user [users]    Comma-separated list of 0+ users
-H, --host <name>     GitHub Enterprise API host URL
-s, --state <state>   State of issues (default: open)
-i, --insecure        Allow unauthorized TLS (for proxies)
-t, --tmpl <path>     Handlebars template path
--html                Display report as HTML
--gh-user <username>  GitHub user name
--gh-pass <password>  GitHub pass
--gh-token <token>    GitHub token
--pr-url              Add pull request or issue URL to output
--repo-type <type>    Repo type (default: all|member|private)
--issue-type [types]  Comma-separated list of issue types (default: pull-request|issue)
Requirements

org: You must enter 1+ organization names.

Authentication

pull-report reads your “~/.gitconfig” file looking for an entry like:

hub]
er = MY_USERNAME
ssword = MY_PASSWORD
ken = MY_TOKEN

You can alternately specify / override values on the command line:

ll-report \
org FormidableLabs \
gh-user MY_USERNAME \
gh-pass MY_PASSWORD

ll-report \
org FormidableLabs \
gh-token MY_TOKEN

If you user two factor auth (or do not want to specify a password on the command line or in your config file, you may instead specify a personal access token. You should generate a token from your github user account with NO additional privileges and either include it in your .gitconfig file or specify it on the command line.

The order of authentication preferences are:

  1. --gh-token
  2. --gh-user/--gh-pass w/ .gitconfig:github:user/.gitconfig:github:password
  3. .gitconfig:github:token
  4. .gitconfig:github:user, .gitconfig:github:password
GitHub Enterprise

Pull report has experimental support for GitHub Enterprise repositories. However, there are a few things to note:

To retrieve reports from GitHub Enterprise, set the --host flag to the host name of your GitHub Enterprise host.

Examples

Get all of the open pull requests for one organization:

ll-report --org FormidableLabs
rmidableLabs:
work-for-us: (1)
* joe-user / jane-user - 1: Added GUI to job posting API

chai-jq: (1)
* jane-user / joe-user - 8: fix DOC anchor links

Get all of the open issues for one organization:

st the issues
ll-report --issue-type issue --org FormidableLabs

sues and PRs
ll-report --issue-type issue,pull-request --org FormidableLabs

Get open pull requests for multiple organizations:

ll-report --org FormidableLabs,ORG2

Get PRs for multiple orgs, filtered to a user list:

ll-report \
org FormidableLabs,ORG2 \
user ryan-roemer,USER2,USER3,USER4,USER5

Get PRs for a GitHub enterprise organization:

ll-report \
host custom-gh-enterprise.example.com \
org ORG1
Templates

Pull report uses Handlebars.js templates for rendering reports. The built-in templates available are:

Custom templates can be specified using the command option: --tmpl /PATH/TO/TEMPLATE.hbs.

Limitations

There is a bit of inefficiency in the current underlying use of the GitHub API. But, any issues should be relatively easy to fix and enhance.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.