ci: stabilize installer smoke
This commit is contained in:
13
.github/workflows/install-smoke.yml
vendored
13
.github/workflows/install-smoke.yml
vendored
@@ -20,18 +20,13 @@ jobs:
|
|||||||
- name: Enable Corepack
|
- name: Enable Corepack
|
||||||
run: corepack enable
|
run: corepack enable
|
||||||
|
|
||||||
- name: Checkout installer site
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
repository: clawdbot/clawd.bot
|
|
||||||
path: installer-site
|
|
||||||
|
|
||||||
- name: Install pnpm deps (minimal)
|
- name: Install pnpm deps (minimal)
|
||||||
run: pnpm install --ignore-scripts --frozen-lockfile
|
run: pnpm install --ignore-scripts --frozen-lockfile
|
||||||
|
|
||||||
- name: Run installer docker tests
|
- name: Run installer docker tests
|
||||||
env:
|
env:
|
||||||
CLAWDBOT_INSTALL_URL: file://$GITHUB_WORKSPACE/installer-site/public/install.sh
|
CLAWDBOT_INSTALL_URL: https://clawd.bot/install.sh
|
||||||
CLAWDBOT_INSTALL_CLI_URL: file://$GITHUB_WORKSPACE/installer-site/public/install-cli.sh
|
CLAWDBOT_INSTALL_CLI_URL: https://clawd.bot/install-cli.sh
|
||||||
CLAWDBOT_NO_ONBOARD: "1"
|
CLAWDBOT_NO_ONBOARD: "1"
|
||||||
run: pnpm test:install:e2e
|
CLAWDBOT_INSTALL_SMOKE_SKIP_CLI: "1"
|
||||||
|
run: pnpm test:install:smoke
|
||||||
|
|||||||
@@ -109,6 +109,7 @@
|
|||||||
"test:docker:all": "pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup",
|
"test:docker:all": "pnpm test:docker:live-models && pnpm test:docker:live-gateway && pnpm test:docker:onboard && pnpm test:docker:gateway-network && pnpm test:docker:qr && pnpm test:docker:doctor-switch && pnpm test:docker:plugins && pnpm test:docker:cleanup",
|
||||||
"test:all": "pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all",
|
"test:all": "pnpm lint && pnpm build && pnpm test && pnpm test:e2e && pnpm test:live && pnpm test:docker:all",
|
||||||
"test:install:e2e": "bash scripts/test-install-sh-e2e-docker.sh",
|
"test:install:e2e": "bash scripts/test-install-sh-e2e-docker.sh",
|
||||||
|
"test:install:smoke": "bash scripts/test-install-sh-docker.sh",
|
||||||
"test:install:e2e:openai": "CLAWDBOT_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh",
|
"test:install:e2e:openai": "CLAWDBOT_E2E_MODELS=openai bash scripts/test-install-sh-e2e-docker.sh",
|
||||||
"test:install:e2e:anthropic": "CLAWDBOT_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh",
|
"test:install:e2e:anthropic": "CLAWDBOT_E2E_MODELS=anthropic bash scripts/test-install-sh-e2e-docker.sh",
|
||||||
"protocol:gen": "tsx scripts/protocol-gen.ts",
|
"protocol:gen": "tsx scripts/protocol-gen.ts",
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ RUN apt-get update \
|
|||||||
bash \
|
bash \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
|
git \
|
||||||
sudo \
|
sudo \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ echo "==> Run installer smoke test (root): $INSTALL_URL"
|
|||||||
docker run --rm -t \
|
docker run --rm -t \
|
||||||
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
||||||
-e CLAWDBOT_NO_ONBOARD=1 \
|
-e CLAWDBOT_NO_ONBOARD=1 \
|
||||||
|
-e DEBIAN_FRONTEND=noninteractive \
|
||||||
"$SMOKE_IMAGE"
|
"$SMOKE_IMAGE"
|
||||||
|
|
||||||
echo "==> Build non-root image: $NONROOT_IMAGE"
|
echo "==> Build non-root image: $NONROOT_IMAGE"
|
||||||
@@ -29,11 +30,19 @@ echo "==> Run installer non-root test: $INSTALL_URL"
|
|||||||
docker run --rm -t \
|
docker run --rm -t \
|
||||||
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
||||||
-e CLAWDBOT_NO_ONBOARD=1 \
|
-e CLAWDBOT_NO_ONBOARD=1 \
|
||||||
|
-e DEBIAN_FRONTEND=noninteractive \
|
||||||
"$NONROOT_IMAGE"
|
"$NONROOT_IMAGE"
|
||||||
|
|
||||||
|
if [[ "${CLAWDBOT_INSTALL_SMOKE_SKIP_CLI:-0}" == "1" ]]; then
|
||||||
|
echo "==> Skip CLI installer smoke (CLAWDBOT_INSTALL_SMOKE_SKIP_CLI=1)"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
echo "==> Run CLI installer non-root test (same image)"
|
echo "==> Run CLI installer non-root test (same image)"
|
||||||
docker run --rm -t \
|
docker run --rm -t \
|
||||||
|
--entrypoint /bin/bash \
|
||||||
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
-e CLAWDBOT_INSTALL_URL="$INSTALL_URL" \
|
||||||
-e CLAWDBOT_INSTALL_CLI_URL="$CLI_INSTALL_URL" \
|
-e CLAWDBOT_INSTALL_CLI_URL="$CLI_INSTALL_URL" \
|
||||||
-e CLAWDBOT_NO_ONBOARD=1 \
|
-e CLAWDBOT_NO_ONBOARD=1 \
|
||||||
"$NONROOT_IMAGE" bash -lc "curl -fsSL \"$CLI_INSTALL_URL\" | bash -s -- --set-npm-prefix --no-onboard"
|
-e DEBIAN_FRONTEND=noninteractive \
|
||||||
|
"$NONROOT_IMAGE" -lc "curl -fsSL \"$CLI_INSTALL_URL\" | bash -s -- --set-npm-prefix --no-onboard"
|
||||||
|
|||||||
Reference in New Issue
Block a user