#!/bin/sh # CI 公共步骤:前端依赖安装(在 docker node 容器中运行) # 用法:step_frontend_install.sh [模式] # 模式: full (默认) - 完整安装所有依赖 # vitest - 同full(保持接口兼容) set -eu MODE="${1:-full}" echo "=== 前端依赖安装开始 (模式: $MODE) ===" # npm ci 带重试(网络不稳定时自动重试) for i in 1 2 3; do 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 echo "npm ci 失败,重试 $i/3..." [ $i -eq 3 ] && exit 1 sleep 5 done echo "=== 前端依赖安装完成 ==="