惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
博客园 - 聂微东
博客园 - Franky
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
L
LangChain Blog
WordPress大学
WordPress大学
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Y
Y Combinator Blog
Blog — PlanetScale
Blog — PlanetScale
MyScale Blog
MyScale Blog
IT之家
IT之家
酷 壳 – CoolShell
酷 壳 – CoolShell
罗磊的独立博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
Apple Machine Learning Research
Apple Machine Learning Research
云风的 BLOG
云风的 BLOG
博客园 - 【当耐特】
P
Proofpoint News Feed
D
DataBreaches.Net

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
refactor(test): share docker e2e shell helpers · openclaw...
steipete · 2026-04-27 · via Recent Commits to openclaw:main

@@ -7,6 +7,7 @@ set -euo pipefail

77

ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"

88

source "$ROOT_DIR/scripts/lib/docker-e2e-image.sh"

99

source "$ROOT_DIR/scripts/lib/docker-e2e-package.sh"

10+

source "$ROOT_DIR/scripts/e2e/lib/bundled-channel-runtime-deps-runner.sh"

10111112

IMAGE_NAME="$(docker_e2e_resolve_image "openclaw-bundled-channel-deps-e2e" OPENCLAW_BUNDLED_CHANNEL_DEPS_E2E_IMAGE)"

1213

UPDATE_BASELINE_VERSION="${OPENCLAW_BUNDLED_CHANNEL_UPDATE_BASELINE_VERSION:-2026.4.20}"

@@ -43,7 +44,7 @@ run_channel_scenario() {

4344

local channel="$1"

4445

local dep_sentinel="$2"

4546

local run_log

46-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-deps-$channel.XXXXXX")"

47+

run_log="$(docker_e2e_run_log "bundled-channel-deps-$channel")"

47484849

echo "Running bundled $channel runtime deps Docker E2E..."

4950

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm \

@@ -446,18 +447,18 @@ stop_gateway

446447

echo "bundled $CHANNEL runtime deps Docker E2E passed"

447448

EOF

448449

then

449-

cat "$run_log"

450+

docker_e2e_print_log "$run_log"

450451

rm -f "$run_log"

451452

exit 1

452453

fi

453454454-

cat "$run_log"

455+

docker_e2e_print_log "$run_log"

455456

rm -f "$run_log"

456457

}

457458458459

run_root_owned_global_scenario() {

459460

local run_log

460-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-root-owned.XXXXXX")"

461+

run_log="$(docker_e2e_run_log bundled-channel-root-owned)"

461462462463

echo "Running bundled channel root-owned global install Docker E2E..."

463464

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm --user root \

@@ -623,18 +624,18 @@ fi

623624

echo "root-owned global install Docker E2E passed"

624625

EOF

625626

then

626-

cat "$run_log"

627+

docker_e2e_print_log "$run_log"

627628

rm -f "$run_log"

628629

exit 1

629630

fi

630631631-

cat "$run_log"

632+

docker_e2e_print_log "$run_log"

632633

rm -f "$run_log"

633634

}

634635635636

run_setup_entry_scenario() {

636637

local run_log

637-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-setup-entry.XXXXXX")"

638+

run_log="$(docker_e2e_run_log bundled-channel-setup-entry)"

638639639640

echo "Running bundled channel setup-entry runtime deps Docker E2E..."

640641

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm \

@@ -880,18 +881,18 @@ done

880881

echo "bundled channel setup-entry runtime deps Docker E2E passed"

881882

EOF

882883

then

883-

cat "$run_log"

884+

docker_e2e_print_log "$run_log"

884885

rm -f "$run_log"

885886

exit 1

886887

fi

887888888-

cat "$run_log"

889+

docker_e2e_print_log "$run_log"

889890

rm -f "$run_log"

890891

}

891892892893

run_disabled_config_scenario() {

893894

local run_log

894-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-disabled-config.XXXXXX")"

895+

run_log="$(docker_e2e_run_log bundled-channel-disabled-config)"

895896896897

echo "Running bundled channel disabled-config runtime deps Docker E2E..."

897898

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm \

@@ -1045,18 +1046,18 @@ fi

10451046

echo "bundled channel disabled-config runtime deps Docker E2E passed"

10461047

EOF

10471048

then

1048-

cat "$run_log"

1049+

docker_e2e_print_log "$run_log"

10491050

rm -f "$run_log"

10501051

exit 1

10511052

fi

105210531053-

cat "$run_log"

1054+

docker_e2e_print_log "$run_log"

10541055

rm -f "$run_log"

10551056

}

1056105710571058

run_update_scenario() {

10581059

local run_log

1059-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-update.XXXXXX")"

1060+

run_log="$(docker_e2e_run_log bundled-channel-update)"

1060106110611062

echo "Running bundled channel runtime deps Docker update E2E..."

10621063

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm \

@@ -1479,18 +1480,18 @@ fi

14791480

echo "bundled channel runtime deps Docker update E2E passed"

14801481

EOF

14811482

then

1482-

cat "$run_log"

1483+

docker_e2e_print_log "$run_log"

14831484

rm -f "$run_log"

14841485

exit 1

14851486

fi

148614871487-

cat "$run_log"

1488+

docker_e2e_print_log "$run_log"

14881489

rm -f "$run_log"

14891490

}

1490149114911492

run_load_failure_scenario() {

14921493

local run_log

1493-

run_log="$(mktemp "${TMPDIR:-/tmp}/openclaw-bundled-channel-load-failure.XXXXXX")"

1494+

run_log="$(docker_e2e_run_log bundled-channel-load-failure)"

1494149514951496

echo "Running bundled channel load-failure isolation Docker E2E..."

14961497

if ! timeout "$DOCKER_RUN_TIMEOUT" docker run --rm \

@@ -1634,45 +1635,13 @@ NODE

16341635

echo "bundled channel load-failure isolation Docker E2E passed"

16351636

EOF

16361637

then

1637-

cat "$run_log"

1638+

docker_e2e_print_log "$run_log"

16381639

rm -f "$run_log"

16391640

exit 1

16401641

fi

164116421642-

cat "$run_log"

1643+

docker_e2e_print_log "$run_log"

16431644

rm -f "$run_log"

16441645

}

164516461646-

if [ "$RUN_CHANNEL_SCENARIOS" != "0" ]; then

1647-

IFS=',' read -r -a CHANNEL_SCENARIOS <<<"${OPENCLAW_BUNDLED_CHANNELS:-${CHANNEL_ONLY:-telegram,discord,slack,feishu,memory-lancedb}}"

1648-

for channel_scenario in "${CHANNEL_SCENARIOS[@]}"; do

1649-

channel_scenario="${channel_scenario//[[:space:]]/}"

1650-

[ -n "$channel_scenario" ] || continue

1651-

case "$channel_scenario" in

1652-

telegram) run_channel_scenario telegram grammy ;;

1653-

discord) run_channel_scenario discord discord-api-types ;;

1654-

slack) run_channel_scenario slack @slack/web-api ;;

1655-

feishu) run_channel_scenario feishu @larksuiteoapi/node-sdk ;;

1656-

memory-lancedb) run_channel_scenario memory-lancedb @lancedb/lancedb ;;

1657-

*)

1658-

echo "Unsupported OPENCLAW_BUNDLED_CHANNELS entry: $channel_scenario" >&2

1659-

exit 1

1660-

;;

1661-

esac

1662-

done

1663-

fi

1664-

if [ "$RUN_UPDATE_SCENARIO" != "0" ]; then

1665-

run_update_scenario

1666-

fi

1667-

if [ "$RUN_ROOT_OWNED_SCENARIO" != "0" ]; then

1668-

run_root_owned_global_scenario

1669-

fi

1670-

if [ "$RUN_SETUP_ENTRY_SCENARIO" != "0" ]; then

1671-

run_setup_entry_scenario

1672-

fi

1673-

if [ "$RUN_DISABLED_CONFIG_SCENARIO" != "0" ]; then

1674-

run_disabled_config_scenario

1675-

fi

1676-

if [ "$RUN_LOAD_FAILURE_SCENARIO" != "0" ]; then

1677-

run_load_failure_scenario

1678-

fi

1647+

run_bundled_channel_runtime_dep_scenarios