From d3b63444cdbf907b1f806e6a7b5d28236f224e55 Mon Sep 17 00:00:00 2001 From: Bonobo Date: Mon, 10 Aug 2026 03:16:19 +0200 Subject: [PATCH] fix(output): randomize captured output delimiter A standalone EOF line is valid remote stdout, but the runner interprets it as the end of the captured multiline value. Generate one Bash-only randomized delimiter per capture and use it for both framing lines while preserving the streaming tee pipeline and its failure behavior. --- entrypoint.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 123c26d..c7d812d 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -71,9 +71,10 @@ if ! "${TARGET}" --version; then fi echo "=======================================" if [[ "${INPUT_CAPTURE_STDOUT}" == 'true' ]]; then - echo 'stdout<> "${GITHUB_OUTPUT}" + OUTPUT_DELIMITER="EOF_${RANDOM}_${RANDOM}_${RANDOM}_${RANDOM}_${RANDOM}_${RANDOM}_${RANDOM}_${RANDOM}" + echo "stdout<<${OUTPUT_DELIMITER}" >> "${GITHUB_OUTPUT}" "${TARGET}" "$@" | tee -a "${GITHUB_OUTPUT}" - echo 'EOF' >> "${GITHUB_OUTPUT}" + echo "${OUTPUT_DELIMITER}" >> "${GITHUB_OUTPUT}" else "${TARGET}" "$@" fi