UNPKG

845 BJavaScriptView Raw
1if (require.main !== module) {
2 throw new Error('This file should not be required');
3}
4
5var childProcess = require('child_process');
6var fs = require('fs');
7
8var params = JSON.parse(process.argv[2]);
9
10var cmd = params.command;
11var execOptions = params.execOptions;
12var pipe = params.pipe;
13var stdoutFile = params.stdoutFile;
14var stderrFile = params.stderrFile;
15
16var c = childProcess.exec(cmd, execOptions, function (err) {
17 if (!err) {
18 process.exitCode = 0;
19 } else if (err.code === undefined) {
20 process.exitCode = 1;
21 } else {
22 process.exitCode = err.code;
23 }
24});
25
26var stdoutStream = fs.createWriteStream(stdoutFile);
27var stderrStream = fs.createWriteStream(stderrFile);
28
29c.stdout.pipe(stdoutStream);
30c.stderr.pipe(stderrStream);
31c.stdout.pipe(process.stdout);
32c.stderr.pipe(process.stderr);
33
34if (pipe) {
35 c.stdin.end(pipe);
36}