UNPKG

799 BJavaScriptView Raw
1var Q = require('q')
2var exec = require('child_process').exec
3var verify = require('check-more-types').verify
4var debug = require('debug')('ggit')
5
6function execPromise (cmd, verbose) {
7 verify.unemptyString(cmd, 'missing command to execute')
8 debug(cmd)
9
10 var deferred = Q.defer()
11 exec(cmd, function (err, stdout, stderr) {
12 if (verbose) {
13 console.log('exec result')
14 console.log('working folder:', process.cwd())
15 console.log('cmd:', cmd)
16 console.log('err:', err)
17 console.log('stdout:', stdout)
18 console.log('stderr:', stderr)
19 }
20
21 if (err) {
22 debug('error running command "%s"', cmd)
23 debug(err.message)
24 return deferred.reject(stderr)
25 }
26 deferred.resolve(stdout)
27 })
28 return deferred.promise
29}
30
31module.exports = execPromise