diff --git a/scripts/ci/step_frontend_install.sh b/scripts/ci/step_frontend_install.sh index c451eab75..624dd7b8c 100755 --- a/scripts/ci/step_frontend_install.sh +++ b/scripts/ci/step_frontend_install.sh @@ -1,24 +1,25 @@ #!/bin/sh # CI 公共步骤:前端依赖安装(在 docker node 容器中运行) -# 用法:step_frontend_install.sh [模式] -# 模式: full (默认) - 完整安装所有依赖 -# vitest - 同full(保持接口兼容) +# 优化:增加国内npm镜像源,加重试间隔 set -eu MODE="${1:-full}" echo "=== 前端依赖安装开始 (模式: $MODE) ===" -# npm ci 带重试(网络不稳定时自动重试) +# npm国内镜像源(加速下载,减少网络失败) +NPM_REGISTRY="https://registry.npmmirror.com" + for i in 1 2 3; do + echo "npm ci 尝试 $i/3 (镜像: $NPM_REGISTRY)" docker run --rm \ -v "$PWD:/workspace" \ -w /workspace/apps/web \ docker.m.daocloud.io/library/node:20 \ - sh -lc "npm ci --no-audit --no-fund" && break + sh -lc "npm config set registry $NPM_REGISTRY && npm ci --no-audit --no-fund" && break echo "npm ci 失败,重试 $i/3..." [ $i -eq 3 ] && exit 1 - sleep 5 + sleep 10 done echo "=== 前端依赖安装完成 ==="