Capture output of stdout and stderr to Actions (#30)

* Capture output of stdout and stderr to Actions

* Remove type descriptors

Whoops! This isn't typescript

* Remove semicolons

* Rename cmd to args

* Separate command from arguments to exec

* Revert "Rename cmd to args"

This reverts commit 98591e5513.

* Append stdout and stderr to string, then log

* Consolidate stdout and stderr into single output

* Move base command back to cmd variable

* Embed execOptions as parameter to exec
This commit is contained in:
Brooks Swinnerton 2021-07-31 12:13:50 -04:00 committed by GitHub
parent fbcc2c2bae
commit 00e2fc8809
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 1 deletions

View File

@ -31,6 +31,9 @@ inputs:
sudo:
description: Set to "true" if root is required for running your playbook
required: false
outputs:
output:
description: The captured output of both stdout and stderr from the Ansible Playbook run
runs:
using: node12
main: main.js

13
main.js
View File

@ -81,7 +81,18 @@ async function main() {
process.env.ANSIBLE_FORCE_COLOR = "True"
await exec.exec(cmd.join(' '))
let output = ""
await exec.exec(cmd.join(' '), null, {
listeners: {
stdout: function(data) {
output += data.toString()
},
stderr: function(data) {
output += data.toString()
}
}
})
core.setOutput("output", output)
} catch (error) {
core.setFailed(error.message)
}