#!/bin/bash PIPELINE_URL="https://ci.f.novalon.cn/repos/1/pipeline/33" COMMIT_SHA="232f481" MAX_CHECKS=20 CHECK_INTERVAL=30 echo "==========================================" echo "Ralph Loop 持续监控模式" echo "==========================================" echo "" echo "Pipeline URL: $PIPELINE_URL" echo "Commit SHA: $COMMIT_SHA" echo "最大检查次数: $MAX_CHECKS" echo "检查间隔: ${CHECK_INTERVAL}秒" echo "" echo "开始监控..." echo "" for i in $(seq 1 $MAX_CHECKS); do echo "==========================================" echo "检查 #$i / $MAX_CHECKS" echo "时间: $(date '+%Y-%m-%d %H:%M:%S')" echo "==========================================" echo "" echo "请检查Pipeline状态:" echo " $PIPELINE_URL" echo "" echo "输入状态 (pass/fail/running/quit):" read -t $CHECK_INTERVAL status || status="running" case $status in pass) echo "" echo "✅ Pipeline已通过!" echo "Ralph Loop完成。" exit 0 ;; fail) echo "" echo "❌ Pipeline失败!" echo "请输入失败的步骤名称:" read step_name echo "失败步骤: $step_name" echo "" echo "Ralph Loop将自动修复..." exit 1 ;; running) echo "" echo "⏳ Pipeline仍在运行,等待${CHECK_INTERVAL}秒后继续检查..." sleep $CHECK_INTERVAL ;; quit) echo "" echo "⚠️ 用户退出监控" exit 2 ;; *) echo "" echo "⚠️ 无效状态: $status" echo "继续监控..." sleep $CHECK_INTERVAL ;; esac done echo "" echo "⚠️ 达到最大检查次数 ($MAX_CHECKS)" echo "Pipeline仍在运行,请手动检查" exit 3