UNPKG

1.79 kBJavaScriptView Raw
1#!/usr/bin/env node
2(function (program, logger, util, lib) {
3 'use strict';
4 process.stdin.resume();
5 process.stdin.setEncoding('utf8');
6
7 var input = '';
8 var loggerImpl;
9
10 process.stdin.on('data', function (chunk) {
11 input += chunk;
12 if (loggerImpl) {
13 loggerImpl.trace('Got chunk');
14 }
15 });
16
17 program
18 .version(require('../package').version)
19 .usage('[options]')
20 .option('-f, --format [value]', 'Coverage input format')
21 .option('-t, --token [value]', 'Codacy Project API Token')
22 .option('-c, --commit [value]', 'Commit SHA hash')
23 .option('-e, --endpoint [value]', 'Codacy API Endpoint')
24 .option('-p, --prefix [value]', 'Project path prefix')
25 .option('-v, --verbose', 'Display verbose output')
26 .option('-d, --debug', 'Display debug output')
27 .parse(process.argv);
28
29 loggerImpl = logger({
30 verbose: program.verbose,
31 debug: program.debug
32 });
33
34 loggerImpl.info(util.format('Started with: token [%j], commitId [%j], endpoint [%j], format [%j], path prefix [%j], verbose [%j], debug [%j]',
35 program.token, program.commit, program.endpoint, program.format, program.prefix, program.verbose, program.debug));
36
37 process.stdin.on('end', function () {
38 loggerImpl.trace('Received file through stdin');
39
40 if (program.help === true) {
41 return;
42 }
43
44 return lib.handleInput(input, program).then(function () {
45 loggerImpl.debug('Successfully sent coverage');
46 }, function (err) {
47 loggerImpl.error('Error sending coverage');
48 loggerImpl.error(err);
49 });
50 });
51
52}(require('commander'), require('../lib/logger'), require('util'), require('../index')));