Code coverage report for lib/cli.js

Statements: 100% (18 / 18)      Branches: 100% (4 / 4)      Functions: 100% (3 / 3)      Lines: 100% (18 / 18)      Ignored: none     

All files » lib/ » cli.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 451 1 1 1   1   3       3           3 3 3 1 1   2 2               1   4           4     1  
var bag               = require('bagofcli');
var Jenkins           = require('nestor');
var NestorNinjaBlocks = require('./nestorninjablocks');
var querystring       = require('querystring');
 
function _run(args) {
 
  var ninjaBlocksOpts = {
    map: args.map ? querystring.parse(args.map, ',', '=') : undefined
  };
 
  var jenkinsOpts = {
    job     : args.job,
    view    : args.view,
    schedule: args.schedule
  };
 
  var jenkins = new Jenkins(process.env.JENKINS_URL);
  jenkins.monitor(jenkinsOpts, function (err, result) {
    if (err) {
      console.error(err.message);
      process.exit(1);
    } else {
      var nestorNinjaBlocks = new NestorNinjaBlocks(process.env.NINJABLOCKS_TOKEN, ninjaBlocksOpts);
      nestorNinjaBlocks.notify(result);
    }
  });
}
 
/**
 * Execute Nestor Ninja Blocks CLI.
 */
function exec() {
 
  var actions = {
    commands: {
      run: { action: _run }
    }
  };
 
  bag.command(__dirname, actions);
}
 
exports.exec = exec;