From 3ca7a012cfeaa7c7ba0bd33f5a73cdc74cf40c69 Mon Sep 17 00:00:00 2001 From: CI Bot Date: Fri, 17 Jul 2026 18:25:07 +0800 Subject: [PATCH] =?UTF-8?q?fix(ci):=20auto-approve=E8=BD=AE=E8=AF=A2?= =?UTF-8?q?=E7=AD=89=E5=BE=85=E6=89=80=E6=9C=89CI=E8=B7=91=E5=AE=8C?= =?UTF-8?q?=E5=86=8D=E5=88=A4=E6=96=AD=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修复看到failure直接exit的bug - 新增ANY_PENDING判断:有pending就继续等 - 所有check都到终态后再判断success/failure --- .gitea/workflows/auto-approve.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.gitea/workflows/auto-approve.yml b/.gitea/workflows/auto-approve.yml index 401d18b45..5400caf0c 100644 --- a/.gitea/workflows/auto-approve.yml +++ b/.gitea/workflows/auto-approve.yml @@ -63,6 +63,7 @@ jobs: for attempt in $(seq 1 120); do ALL_SUCCESS=true ANY_FAILED=false + ANY_PENDING=false echo "--- 第${attempt}次检查 ($(date '+%H:%M:%S')) ---" @@ -77,6 +78,9 @@ jobs: if [ "$STATE" = "failure" ] || [ "$STATE" = "error" ]; then ANY_FAILED=true fi + if [ "$STATE" = "pending" ] || [ "$STATE" = "null" ]; then + ANY_PENDING=true + fi done if [ "$ALL_SUCCESS" = "true" ]; then @@ -140,12 +144,21 @@ jobs: fi fi + # 还有CI在跑(pending状态)→ 继续等 + if [ "$ANY_PENDING" = "true" ]; then + echo "⏳ CI仍在运行中,继续等待(第${attempt}/120次轮询)..." + sleep 10 + continue + fi + + # 所有CI都跑完了但有失败 → 退出 if [ "$ANY_FAILED" = "true" ]; then echo echo "❌ CI检查有失败项,不自动审批" exit 0 fi + # 其他情况继续等 sleep 10 done -- 2.54.0