fix(e2e): route sampled docker runs through helpers · openclaw/openclaw@29919cb
vincentkoc
·
2026-05-26
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -29,7 +29,7 @@ RUN_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-kitchen-sink-plugin.XXXXXX")"
|
29 | 29 | STATS_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-kitchen-sink-plugin-stats.XXXXXX")" |
30 | 30 | |
31 | 31 | cleanup() { |
32 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 32 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
33 | 33 | rm -f "$RUN_LOG" "$STATS_LOG" |
34 | 34 | } |
35 | 35 | trap cleanup EXIT |
@@ -55,15 +55,15 @@ if [[ "${OPENCLAW_KITCHEN_SINK_LIVE_CLAWHUB:-0}" = "1" ]]; then
|
55 | 55 | fi |
56 | 56 | |
57 | 57 | echo "Running kitchen-sink plugin Docker E2E..." |
58 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 58 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
59 | 59 | docker_e2e_harness_mount_args |
60 | | -docker run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" "${DOCKER_ENV_ARGS[@]}" -i "$IMAGE_NAME" bash scripts/e2e/lib/kitchen-sink-plugin/sweep.sh \ |
| 60 | +docker_e2e_docker_run_cmd run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" "${DOCKER_ENV_ARGS[@]}" -i "$IMAGE_NAME" bash scripts/e2e/lib/kitchen-sink-plugin/sweep.sh \ |
61 | 61 | >"$RUN_LOG" 2>&1 & |
62 | 62 | docker_pid="$!" |
63 | 63 | |
64 | 64 | while kill -0 "$docker_pid" 2>/dev/null; do |
65 | | -if docker inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
66 | | -docker stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
| 65 | +if docker_e2e_docker_cmd inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
| 66 | +docker_e2e_docker_cmd stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
67 | 67 | fi |
68 | 68 | sleep 2 |
69 | 69 | done |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -12,7 +12,7 @@ RUN_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-kitchen-sink-rpc.XXXXXX")"
|
12 | 12 | STATS_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-kitchen-sink-rpc-stats.XXXXXX")" |
13 | 13 | |
14 | 14 | cleanup() { |
15 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 15 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
16 | 16 | rm -f "$RUN_LOG" "$STATS_LOG" |
17 | 17 | } |
18 | 18 | trap cleanup EXIT |
@@ -40,15 +40,15 @@ for env_name in \
|
40 | 40 | done |
41 | 41 | |
42 | 42 | echo "Running kitchen-sink RPC Docker E2E..." |
43 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 43 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
44 | 44 | docker_e2e_harness_mount_args |
45 | | -docker run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" "${DOCKER_ENV_ARGS[@]}" -i "$IMAGE_NAME" \ |
| 45 | +docker_e2e_docker_run_cmd run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" "${DOCKER_ENV_ARGS[@]}" -i "$IMAGE_NAME" \ |
46 | 46 | node scripts/e2e/kitchen-sink-rpc-walk.mjs >"$RUN_LOG" 2>&1 & |
47 | 47 | docker_pid="$!" |
48 | 48 | |
49 | 49 | while kill -0 "$docker_pid" 2>/dev/null; do |
50 | | -if docker inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
51 | | -docker stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
| 50 | +if docker_e2e_docker_cmd inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
| 51 | +docker_e2e_docker_cmd stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
52 | 52 | fi |
53 | 53 | sleep 2 |
54 | 54 | done |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -12,24 +12,24 @@ RUN_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-onboard.XXXXXX")"
|
12 | 12 | STATS_LOG="$(mktemp "${TMPDIR:-/tmp}/openclaw-onboard-stats.XXXXXX")" |
13 | 13 | |
14 | 14 | cleanup() { |
15 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 15 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
16 | 16 | rm -f "$RUN_LOG" "$STATS_LOG" |
17 | 17 | } |
18 | 18 | trap cleanup EXIT |
19 | 19 | |
20 | 20 | docker_e2e_build_or_reuse "$IMAGE_NAME" onboard |
21 | 21 | |
22 | 22 | echo "Running onboarding E2E..." |
23 | | -docker rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
| 23 | +docker_e2e_docker_cmd rm -f "$CONTAINER_NAME" >/dev/null 2>&1 || true |
24 | 24 | docker_e2e_harness_mount_args |
25 | | -docker run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" -t \ |
| 25 | +docker_e2e_docker_run_cmd run --name "$CONTAINER_NAME" "${DOCKER_E2E_HARNESS_ARGS[@]}" -t \ |
26 | 26 | -e "OPENCLAW_TEST_STATE_FUNCTION_B64=$OPENCLAW_TEST_STATE_FUNCTION_B64" \ |
27 | 27 | "$IMAGE_NAME" bash scripts/e2e/lib/onboard/scenario.sh >"$RUN_LOG" 2>&1 & |
28 | 28 | docker_pid="$!" |
29 | 29 | |
30 | 30 | while kill -0 "$docker_pid" 2>/dev/null; do |
31 | | -if docker inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
32 | | -docker stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
| 31 | +if docker_e2e_docker_cmd inspect "$CONTAINER_NAME" >/dev/null 2>&1; then |
| 32 | +docker_e2e_docker_cmd stats --no-stream --format '{{json .}}' "$CONTAINER_NAME" >>"$STATS_LOG" 2>/dev/null || true |
33 | 33 | fi |
34 | 34 | sleep 2 |
35 | 35 | done |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -478,7 +478,7 @@ test -f "$TMPDIR/docker-cmd-seen"
|
478 | 478 | expect(runner).toContain("OPENCLAW_ONBOARD_MAX_MEMORY_MIB"); |
479 | 479 | expect(runner).toContain("OPENCLAW_ONBOARD_MAX_CPU_PERCENT"); |
480 | 480 | expect(runner).toContain("--name \"$CONTAINER_NAME\""); |
481 | | -expect(runner).toContain("docker stats --no-stream"); |
| 481 | +expect(runner).toContain("docker_e2e_docker_cmd stats --no-stream"); |
482 | 482 | expect(runner).toContain("assert-resource-ceiling.mjs"); |
483 | 483 | expect(runner).not.toContain("docker_e2e_run_with_harness -t"); |
484 | 484 | }); |
@@ -493,6 +493,11 @@ test -f "$TMPDIR/docker-cmd-seen"
|
493 | 493 | |
494 | 494 | expect(runner, path).toContain('RUN_LOG="$(mktemp'); |
495 | 495 | expect(runner, path).toContain('STATS_LOG="$(mktemp'); |
| 496 | +expect(runner, path).toContain('docker_e2e_docker_run_cmd run --name "$CONTAINER_NAME"'); |
| 497 | +expect(runner, path).toContain('docker_e2e_docker_cmd inspect "$CONTAINER_NAME"'); |
| 498 | +expect(runner, path).toContain("docker_e2e_docker_cmd stats --no-stream"); |
| 499 | +expect(runner, path).not.toMatch(/(^|\n)docker run --name "\$CONTAINER_NAME"/u); |
| 500 | +expect(runner, path).not.toMatch(/(^|\n)docker (?:inspect|stats) /u); |
496 | 501 | expect(runner, path).toMatch(/cleanup\(\) \{[\s\S]*rm -f "\$RUN_LOG" "\$STATS_LOG"/u); |
497 | 502 | } |
498 | 503 | }); |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。