mirror of
https://github.com/openclaw/openclaw.git
synced 2026-10-04 10:10:01 +00:00
fix(e2e): time out standalone Docker smokes
This commit is contained in:
parent
68f877ef66
commit
f1ceed94db
3 changed files with 31 additions and 2 deletions
|
|
@ -3,8 +3,10 @@ set -euo pipefail
|
|||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
source "$ROOT_DIR/scripts/lib/docker-build.sh"
|
||||
source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"
|
||||
IMAGE_NAME="${OPENCLAW_CLEANUP_SMOKE_IMAGE:-openclaw-cleanup-smoke:local}"
|
||||
PLATFORM="${OPENCLAW_CLEANUP_SMOKE_PLATFORM:-linux/amd64}"
|
||||
DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_CLEANUP_SMOKE_DOCKER_TIMEOUT:-600s}}"
|
||||
|
||||
echo "==> Build image: $IMAGE_NAME"
|
||||
docker_build_run cleanup-build \
|
||||
|
|
@ -13,4 +15,4 @@ docker_build_run cleanup-build \
|
|||
"$ROOT_DIR"
|
||||
|
||||
echo "==> Run cleanup smoke test"
|
||||
docker run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"
|
||||
docker_e2e_docker_run_cmd run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"
|
||||
|
|
|
|||
|
|
@ -3,8 +3,10 @@ set -euo pipefail
|
|||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
source "$ROOT_DIR/scripts/lib/docker-build.sh"
|
||||
source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"
|
||||
IMAGE_NAME="${OPENCLAW_INSTALL_E2E_IMAGE:-openclaw-install-e2e:local}"
|
||||
INSTALL_URL="${OPENCLAW_INSTALL_URL:-https://openclaw.bot/install.sh}"
|
||||
DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_INSTALL_E2E_DOCKER_TIMEOUT:-2700s}}"
|
||||
|
||||
OPENAI_API_KEY="${OPENAI_API_KEY:-}"
|
||||
ANTHROPIC_API_KEY="${ANTHROPIC_API_KEY:-}"
|
||||
|
|
@ -18,7 +20,7 @@ docker_build_run install-e2e-build \
|
|||
"$ROOT_DIR/scripts/docker"
|
||||
|
||||
echo "==> Run E2E installer test"
|
||||
docker run --rm \
|
||||
docker_e2e_docker_run_cmd run --rm \
|
||||
-e OPENCLAW_INSTALL_URL="$INSTALL_URL" \
|
||||
-e OPENCLAW_INSTALL_TAG="${OPENCLAW_INSTALL_TAG:-latest}" \
|
||||
-e OPENCLAW_E2E_MODELS="$OPENCLAW_E2E_MODELS" \
|
||||
|
|
|
|||
|
|
@ -10,6 +10,8 @@ const DOCKER_E2E_PACKAGE_HELPER_PATH = "scripts/lib/docker-e2e-package.sh";
|
|||
const DOCKER_E2E_IMAGE_HELPER_PATH = "scripts/lib/docker-e2e-image.sh";
|
||||
const DOCKER_E2E_SCENARIOS_PATH = "scripts/lib/docker-e2e-scenarios.mjs";
|
||||
const INSTALL_E2E_RUNNER_PATH = "scripts/docker/install-sh-e2e/run.sh";
|
||||
const CLEANUP_DOCKER_SMOKE_PATH = "scripts/test-cleanup-docker.sh";
|
||||
const INSTALL_E2E_DOCKER_SMOKE_PATH = "scripts/test-install-sh-e2e-docker.sh";
|
||||
const LIVE_CLI_BACKEND_DOCKER_PATH = "scripts/test-live-cli-backend-docker.sh";
|
||||
const LIVE_BUILD_DOCKER_PATH = "scripts/test-live-build-docker.sh";
|
||||
const OPENAI_WEB_SEARCH_MINIMAL_E2E_PATH = "scripts/e2e/openai-web-search-minimal-docker.sh";
|
||||
|
|
@ -108,6 +110,29 @@ describe("docker build helper", () => {
|
|||
}
|
||||
});
|
||||
|
||||
it("routes standalone Docker smoke runs through the timeout-aware helper", () => {
|
||||
const cleanupSmoke = readFileSync(CLEANUP_DOCKER_SMOKE_PATH, "utf8");
|
||||
const installE2eSmoke = readFileSync(INSTALL_E2E_DOCKER_SMOKE_PATH, "utf8");
|
||||
|
||||
expect(cleanupSmoke).toContain('source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"');
|
||||
expect(cleanupSmoke).toContain(
|
||||
'DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_CLEANUP_SMOKE_DOCKER_TIMEOUT:-600s}}"',
|
||||
);
|
||||
expect(cleanupSmoke).toContain(
|
||||
'docker_e2e_docker_run_cmd run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"',
|
||||
);
|
||||
expect(cleanupSmoke).not.toContain('docker run --rm --platform "$PLATFORM" -t "$IMAGE_NAME"');
|
||||
|
||||
expect(installE2eSmoke).toContain(
|
||||
'source "$ROOT_DIR/scripts/lib/docker-e2e-container.sh"',
|
||||
);
|
||||
expect(installE2eSmoke).toContain(
|
||||
'DOCKER_COMMAND_TIMEOUT="${DOCKER_COMMAND_TIMEOUT:-${OPENCLAW_INSTALL_E2E_DOCKER_TIMEOUT:-2700s}}"',
|
||||
);
|
||||
expect(installE2eSmoke).toContain("docker_e2e_docker_run_cmd run --rm \\");
|
||||
expect(installE2eSmoke).not.toContain("docker run --rm \\");
|
||||
});
|
||||
|
||||
it("lets Testbox fall back to building when a reused Docker image is missing", () => {
|
||||
const helper = readFileSync(HELPER_PATH, "utf8");
|
||||
const e2eImageHelper = readFileSync(DOCKER_E2E_IMAGE_HELPER_PATH, "utf8");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue