make capturing optional

pull/287/head
GammaGames 5 months ago
parent fbf2b7866a
commit 4172428f49

@ -77,6 +77,12 @@ inputs:
description: "pass all environment variable to shell script."
request_pty:
description: "Request a pseudo-terminal from the server."
capture_stdout:
description: "Capture the stdout of the commands."
default: "false"
capture_stderr:
description: "Capture the stderr of the commands."
default: "false"
outputs:
stdout:

@ -68,11 +68,28 @@ chmod +x ${TARGET}
echo "======= CLI Version ======="
sh -c "${TARGET} --version" # print version
echo "==========================="
{
if [ ${{ inputs.capture_stdout }} == 'true' ] || [ "${{ inputs.capture_stderr }}" == 'true' ]; then
_stdout=/dev/stdout
_stderr=/dev/stderr
if [ "${{ inputs.capture_stdout }}" == 'true' ]; then
_stdout=/tmp/outFile
fi
if [ "${{ inputs.capture_stderr }}" == 'true' ]; then
_stderr=/tmp/errFile
fi
{
sh -c "${TARGET} $*" # run the command
} 2> /tmp/errFile | tee /tmp/outFile
} 2> $_stderr | tee $_stdout
stdout=$(cat /tmp/outFile)
stderr=$(cat /tmp/errFile)
echo "stdout=${stdout//$'\n'/\\n}" >> $GITHUB_OUTPUT
echo "stderr=${stderr//$'\n'/\\n}" >> $GITHUB_OUTPUT
if [ "${{ inputs.capture_stdout }}" == 'true' ]; then
stdout=$(cat $_stdout)
echo "stdout=${stdout//$'\n'/\\n}" >> $GITHUB_OUTPUT
fi
if [ "${{ inputs.capture_stderr }}" == 'true' ]; then
stderr=$(cat $_stderr)
echo "stderr=${stderr//$'\n'/\\n}" >> $GITHUB_OUTPUT
fi
else
sh -c "${TARGET} $*" # run the command
fi

Loading…
Cancel
Save