From 8b14052ebe9d0ced947de214e2ac20ed384013c3 Mon Sep 17 00:00:00 2001 From: JayMishra-github Date: Mon, 16 Feb 2026 10:47:14 -0800 Subject: [PATCH] fix: capture init script exit codes instead of swallowing via pipe Address review feedback: the pipe to sed swallowed the script's exit code. Now capture output in a variable and check exit status separately so failures are logged as warnings in the entrypoint output. Co-Authored-By: Claude Opus 4.6 --- scripts/docker-entrypoint.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/docker-entrypoint.sh b/scripts/docker-entrypoint.sh index 659134ccb5c..72a8bd185a6 100755 --- a/scripts/docker-entrypoint.sh +++ b/scripts/docker-entrypoint.sh @@ -18,7 +18,8 @@ if [ -d "$INIT_DIR" ] && [ "$(ls -A "$INIT_DIR" 2>/dev/null)" ]; then [ -f "$script" ] || continue if [ -x "$script" ]; then echo "[openclaw-init] Running $(basename "$script")..." - "$script" 2>&1 | sed "s/^/ /" + output=$("$script" 2>&1) || echo "[openclaw-init] WARNING: $(basename "$script") exited with status $?" + [ -n "$output" ] && printf '%s\n' "$output" | sed 's/^/ /' else echo "[openclaw-init] Skipping $(basename "$script") (not executable)" fi