























@@ -51,6 +51,7 @@ docker_e2e_build_or_reuse "$IMAGE_NAME" npm-telegram-live "$ROOT_DIR/scripts/e2e
5151mkdir -p "$ROOT_DIR/.artifacts/qa-e2e"
5252run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-npm-telegram-live.XXXXXX")"
5353npm_prefix_host="$(mktemp -d "$ROOT_DIR/.artifacts/qa-e2e/npm-telegram-live-prefix.XXXXXX")"
54+trap 'rm -f "$run_log"; rm -rf "$npm_prefix_host"' EXIT
5455credential_source="$(resolve_credential_source)"
5556credential_role="$(resolve_credential_role)"
5657if [ -z "$credential_role" ] && [ -n "${CI:-}" ] && [ "$credential_source" = "convex" ]; then
@@ -111,44 +112,40 @@ for key in \
111112 forward_env_if_set "$key"
112113done
113114115+run_logged() {
116+if ! "$@" >"$run_log" 2>&1; then
117+ cat "$run_log"
118+exit 1
119+fi
120+ cat "$run_log"
121+>"$run_log"
122+}
123+114124echo "Running published npm Telegram live Docker E2E ($PACKAGE_SPEC)..."
115-if ! docker run --rm \
125+run_logged docker run --rm \
116126 -e COREPACK_ENABLE_DOWNLOAD_PROMPT=0 \
117127 -e OPENCLAW_NPM_TELEGRAM_PACKAGE_SPEC="$PACKAGE_SPEC" \
118128 -v "$npm_prefix_host:/npm-global" \
119- -i "$IMAGE_NAME" bash -s >"$run_log" 2>&1 <<'EOF'
129+ -i "$IMAGE_NAME" bash -s <<'EOF'
120130set -euo pipefail
121131122132export HOME="$(mktemp -d "/tmp/openclaw-npm-telegram-install.XXXXXX")"
123133export NPM_CONFIG_PREFIX="/npm-global"
124134export PATH="$NPM_CONFIG_PREFIX/bin:$PATH"
125135126136package_spec="${OPENCLAW_NPM_TELEGRAM_PACKAGE_SPEC:?missing OPENCLAW_NPM_TELEGRAM_PACKAGE_SPEC}"
127-if [[ ! "$package_spec" =~ ^openclaw@(beta|latest|[0-9]{4}\.[1-9][0-9]*\.[1-9][0-9]*(-[1-9][0-9]*|-beta\.[1-9][0-9]*)?)$ ]]; then
128- echo "OPENCLAW_NPM_TELEGRAM_PACKAGE_SPEC must be openclaw@beta, openclaw@latest, or an exact OpenClaw release version; got: $package_spec" >&2
129- exit 1
130-fi
131137echo "Installing ${package_spec}..."
132138npm install -g "$package_spec" --no-fund --no-audit
133139134140command -v openclaw
135141openclaw --version
136142EOF
137-then
138- cat "$run_log"
139- rm -f "$run_log"
140- rm -rf "$npm_prefix_host"
141-exit 1
142-fi
143-144-cat "$run_log"
145->"$run_log"
146143147-if ! docker run --rm \
144+run_logged docker run --rm \
148145"${docker_env[@]}" \
149146 -v "$ROOT_DIR/.artifacts:/app/.artifacts" \
150147 -v "$npm_prefix_host:/npm-global" \
151- -i "$IMAGE_NAME" bash -s >"$run_log" 2>&1 <<'EOF'
148+ -i "$IMAGE_NAME" bash -s <<'EOF'
152149set -euo pipefail
153150154151export HOME="$(mktemp -d "/tmp/openclaw-npm-telegram-runtime.XXXXXX")"
@@ -162,14 +159,5 @@ openclaw --version
162159export OPENCLAW_NPM_TELEGRAM_SUT_COMMAND="$(command -v openclaw)"
163160node --import tsx scripts/e2e/npm-telegram-live-runner.ts
164161EOF
165-then
166- cat "$run_log"
167- rm -f "$run_log"
168- rm -rf "$npm_prefix_host"
169-exit 1
170-fi
171162172-cat "$run_log"
173-rm -f "$run_log"
174-rm -rf "$npm_prefix_host"
175163echo "published npm Telegram live Docker E2E passed ($PACKAGE_SPEC)"
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。