@@ -27599,13 +27599,18 @@ module.exports = {
27599
27599
* console.log(listener.contents);
27600
27600
*/
27601
27601
class OutputListener {
27602
- constructor () {
27602
+ constructor (streamWriter ) {
27603
27603
this._buff = [];
27604
+ this._streamWriter = streamWriter;
27604
27605
}
27605
27606
27606
27607
get listener () {
27607
27608
const listen = function listen (data) {
27608
27609
this._buff.push(data);
27610
+
27611
+ if (this._streamWriter) {
27612
+ this._streamWriter.write(data);
27613
+ }
27609
27614
};
27610
27615
return listen.bind(this);
27611
27616
}
@@ -27946,9 +27951,9 @@ async function checkTerraform () {
27946
27951
// This will fail if Terraform isn't found, which is what we want
27947
27952
await checkTerraform();
27948
27953
27949
- // Create listeners to receive output (in memory) as well
27950
- const stdout = new OutputListener();
27951
- const stderr = new OutputListener();
27954
+ // Create listeners to receive output (in memory)
27955
+ const stdout = new OutputListener(process.stdout );
27956
+ const stderr = new OutputListener(process.stderr );
27952
27957
const listeners = {
27953
27958
stdout: stdout.listener,
27954
27959
stderr: stderr.listener
@@ -27963,10 +27968,6 @@ async function checkTerraform () {
27963
27968
};
27964
27969
const exitCode = await exec(pathToCLI, args, options);
27965
27970
27966
- // Pass-through stdout/err as `exec` won't due to `silent: true` option
27967
- process.stdout.write(stdout.contents);
27968
- process.stderr.write(stderr.contents);
27969
-
27970
27971
// Set outputs, result, exitcode, and stderr
27971
27972
core.setOutput('stdout', stdout.contents);
27972
27973
core.setOutput('stderr', stderr.contents);
0 commit comments