grunt-github-api
v0.2.3
Published
Query Github's API and save the returned JSON files locally.
Downloads
8
Readme
Github API
Used to query the Github API and save the returned JSON files locally.
Getting Started
This plugin requires Grunt ~0.4.0
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install github-api --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('github-api');
Run this task with the grunt github
command.
Task targets, files and options may be specified according to the grunt Configuring tasks guide.
Usage
The github-api module accepts options at both the global and local task level. Special options include oAuth
, filters
and screenDump
.
Options
oAuth
- contain two specific properties;client_id
andclient_secret
. These credentials are provided by Github, and need to be created by a user with corrent permissions before any secure query will work. Additional information about Github and oAuth2 can be found in their oAuth documentation.filters
- should contain the filtering parameters avaliable to thesrc
query defined. Additional information about specific filters can be found in the Github Developer Documentation.screenDump
- boolean flag to used to determine if the returned JSON should be dumped to the screen. (default isfalse
)
Targets
src
- is the specified API query path. Soruce paths are everything that appears afterapi.github.com
. Additional information about different query paths can be found in the Github Developer Documentation.dest
- is the path and filename where the retured request should be saved.
Example
github: {
options: {
oAuth: {
'client_id': 'XXXXXXXXXXXX',
'client_secret': 'YYYYYYYYYYYYYYYYYYYYYYYYYYYYY'
}
},
changelog: {
options: {
filters: {
'state': 'open'
}
},
src: '/repos/:org/:repo1/issues', // Get a JSON file for all open issues from repo1
dest: 'open.json'
}
}