ci(ci-stability): 为pip install和npm ci添加重试机制 (#619) #627

Merged
auto-approve-bot merged 2 commits from feature/ci-pip-npm-retry into develop 2026-07-20 10:56:02 +08:00
2 changed files with 30 additions and 8 deletions
+19 -3
View File
@@ -10,9 +10,25 @@ echo "=== CI Unit Tests 开始 ==="
# --- 安装依赖 ---
echo ""
echo "=== 安装 Python 依赖 ==="
python3 -m pip install -q -r requirements-base.txt
python3 -m pip install -q -r requirements.txt
python3 -m pip install -q -r requirements-dev.txt
# pip install 带重试(网络不稳定时自动重试)
for i in 1 2 3; do
python3 -m pip install -q -r requirements-base.txt && break
echo "pip install requirements-base.txt 失败,重试 $i/3..."
[ $i -eq 3 ] && exit 1
sleep 5
done
for i in 1 2 3; do
python3 -m pip install -q -r requirements.txt && break
echo "pip install requirements.txt 失败,重试 $i/3..."
[ $i -eq 3 ] && exit 1
sleep 5
done
for i in 1 2 3; do
python3 -m pip install -q -r requirements-dev.txt && break
echo "pip install requirements-dev.txt 失败,重试 $i/3..."
[ $i -eq 3 ] && exit 1
sleep 5
done
pytest --version
# --- 增量测试选择(仅PR) ---
+11 -5
View File
@@ -9,10 +9,16 @@ MODE="${1:-full}"
echo "=== 前端依赖安装开始 (模式: $MODE) ==="
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"
# 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 "=== 前端依赖安装完成 ==="