Skip to content

Commit 8f18b9a

Browse files
committed
Merge branch 'bjrmatos-master'
2 parents 945ac24 + c9461f8 commit 8f18b9a

File tree

2 files changed

+18
-15
lines changed

2 files changed

+18
-15
lines changed

lib/index.js

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,18 @@ var defaultOptions = {
3434
onBuildEnd: [],
3535
onBuildExit: [],
3636
dev: true,
37-
verbose: false,
38-
watch: false
37+
verbose: false
3938
};
4039

4140
function puts(error, stdout, stderr) {
4241
if (error) {
4342
console.log('Error: ', error, stderr);
4443
}
45-
console.log(stdout);
44+
}
45+
46+
function spreadStdoutAndStdErr(proc) {
47+
proc.stdout.pipe(process.stdout);
48+
proc.stderr.pipe(process.stdout);
4649
}
4750

4851
function validateInput(options) {
@@ -86,7 +89,7 @@ var WebpackShellPlugin = function () {
8689
if (_this.options.onBuildStart.length) {
8790
console.log('Executing pre-build scripts');
8891
_this.options.onBuildStart.forEach(function (script) {
89-
exec(script, puts);
92+
spreadStdoutAndStdErr(exec(script, puts));
9093
});
9194
if (_this.options.dev) {
9295
_this.options.onBuildStart = [];
@@ -95,14 +98,10 @@ var WebpackShellPlugin = function () {
9598
});
9699

97100
compiler.plugin('emit', function (compilation, callback) {
98-
for (var key in compilation.options) {
99-
console.log(key);
100-
}
101-
console.log('EMITTING');
102101
if (_this.options.onBuildEnd.length) {
103102
console.log('Executing post-build scripts');
104103
_this.options.onBuildEnd.forEach(function (script) {
105-
exec(script, puts);
104+
spreadStdoutAndStdErr(exec(script, puts));
106105
});
107106
if (_this.options.dev) {
108107
_this.options.onBuildEnd = [];
@@ -115,7 +114,7 @@ var WebpackShellPlugin = function () {
115114
if (_this.options.onBuildExit.length) {
116115
console.log('Executing additional scripts before exit');
117116
_this.options.onBuildExit.forEach(function (script) {
118-
exec(script, puts);
117+
spreadStdoutAndStdErr(exec(script, puts));
119118
});
120119
}
121120
});

src/webpack-shell-plugin.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,11 @@ function puts(error, stdout, stderr) {
1111
if (error) {
1212
console.log('Error: ', error, stderr);
1313
}
14-
console.log(stdout);
14+
}
15+
16+
function spreadStdoutAndStdErr(proc) {
17+
proc.stdout.pipe(process.stdout);
18+
proc.stderr.pipe(process.stdout);
1519
}
1620

1721
function validateInput(options) {
@@ -28,7 +32,7 @@ function validateInput(options) {
2832
}
2933

3034
function mergeOptions(options, defaults) {
31-
for (var key in defaults) {
35+
for (let key in defaults) {
3236
if (options.hasOwnProperty(key)) {
3337
defaults[key] = options[key];
3438
}
@@ -50,7 +54,7 @@ export default class WebpackShellPlugin {
5054
if (this.options.onBuildStart.length) {
5155
console.log('Executing pre-build scripts');
5256
this.options.onBuildStart.forEach((script) => {
53-
exec(script, puts);
57+
spreadStdoutAndStdErr(exec(script, puts));
5458
});
5559
if (this.options.dev) {
5660
this.options.onBuildStart = [];
@@ -62,7 +66,7 @@ export default class WebpackShellPlugin {
6266
if (this.options.onBuildEnd.length) {
6367
console.log('Executing post-build scripts');
6468
this.options.onBuildEnd.forEach((script) => {
65-
exec(script, puts);
69+
spreadStdoutAndStdErr(exec(script, puts));
6670
});
6771
if (this.options.dev) {
6872
this.options.onBuildEnd = [];
@@ -75,7 +79,7 @@ export default class WebpackShellPlugin {
7579
if (this.options.onBuildExit.length) {
7680
console.log('Executing additional scripts before exit');
7781
this.options.onBuildExit.forEach((script) => {
78-
exec(script, puts);
82+
spreadStdoutAndStdErr(exec(script, puts));
7983
});
8084
}
8185
});

0 commit comments

Comments
 (0)