From acb490fa10d63fa9aba8302fd4856394a193547a Mon Sep 17 00:00:00 2001 From: Kyle Date: Fri, 3 Apr 2026 13:33:40 -0700 Subject: [PATCH] Fix track-probe fake yt-dlp shell script for CI - Use #!/bin/sh instead of #!/usr/bin/env sh (avoids PATH dependency) - Set minimal PATH inside script for base64/cat commands - Fix base64 content encoding: use stdoutBody directly instead of JSON.stringify(stdoutBody) which double-encoded the output - Use unique heredoc delimiter to avoid conflicts with content --- src/core/services/youtube/track-probe.test.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/core/services/youtube/track-probe.test.ts b/src/core/services/youtube/track-probe.test.ts index fe31517b..19a62cfc 100644 --- a/src/core/services/youtube/track-probe.test.ts +++ b/src/core/services/youtube/track-probe.test.ts @@ -24,10 +24,11 @@ function makeFakeYtDlpScript(dir: string, payload: unknown, rawScript = false): : `#!/usr/bin/env bun process.stdout.write(${JSON.stringify(stdoutBody)}); ` - : `#!/usr/bin/env sh -cat <<'EOF' | base64 -d -${Buffer.from(rawScript ? stdoutBody : `${JSON.stringify(stdoutBody)}`).toString('base64')} -EOF + : `#!/bin/sh +PATH=/usr/bin:/bin:/usr/local/bin +cat <<'SUBMINER_EOF' | base64 -d +${Buffer.from(stdoutBody).toString('base64')} +SUBMINER_EOF `; fs.writeFileSync(scriptPath, script, 'utf8'); if (process.platform !== 'win32') {