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 45 461 1 1 1   1   3       3           3 3   3 3 1 1   2               1   4           4     1  
var bag         = require('bagofcli');
var Jenkins     = require('nestor');
var NestorLIFX  = require('./nestorlifx');
var querystring = require('querystring');
 
function _run(args) {
 
  var lifxOpts = {
    map: args.map ? querystring.parse(args.map, ',', '=') : undefined
  };
 
  var jenkinsOpts = {
    job     : args.job,
    view    : args.view,
    schedule: args.schedule
  };
 
  var nestorLifx = new NestorLIFX(lifxOpts);
  var jenkins    = new Jenkins(process.env.JENKINS_URL);
 
  jenkins.monitor(jenkinsOpts, function (err, result) {
    if (err) {
      console.error(err.message);
      process.exit(1);
    } else {
      nestorLifx.notify(result);
    }
  });
}
 
/**
 * Execute Nestor LIFX CLI.
 */
function exec() {
 
  var actions = {
    commands: {
      run: { action: _run }
    }
  };
 
  bag.command(__dirname, actions);
}
 
exports.exec = exec;