diff --git a/bin/readable-status.js b/bin/readable-status.js new file mode 100755 index 0000000..939ea8c --- /dev/null +++ b/bin/readable-status.js @@ -0,0 +1,38 @@ +#! /usr/bin/env node + +var fetch = require('node-fetch'); +var readable = require('../index').readable; + +// check arguments + +if (process.argv.length < 3) { + process.exit(1); +} + +var args = process.argv.slice(2); +var bugid = args.shift(); + +// request bug + +fetch('https://bugzilla.mozilla.org/rest/bug/' + bugid). + then(function(res) { + if (res.ok) { + res.json().then(function(json) { + var bug = json.bugs.shift(); + var result = readable(bug); + if (result.error) { + console.log(result.error); + } else { + console.log(bug.id + ': ' + bug.summary + ': ' + result); + } + }); + } else { + console.log(res.statusText); + process.exit(1); + } + }). + catch(function(error) { + console.log('Failed to reach bugzilla.mozilla.org.'); + process.exit(1); + }); + diff --git a/package.json b/package.json index d31ce13..1ff21e6 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,9 @@ "demo": "node test/fetch.js", "bundle-demo": "browserify test/fetch.js -o bugzilla-readable-status-browser-demo.js" }, + "bin": { + "readable-status": "bin/readable-status.js" + }, "repository": { "type": "git", "url": "git+https://github.com/emceeaich/bugzilla-readable-status.git" @@ -36,7 +39,8 @@ "test": "test" }, "dependencies": { + "browserify": "^13.0.1", "minifyify": "^7.3.3", - "browserify": "^13.0.1" + "node-fetch": "^1.5.2" } }