#!/bin/bash # 部署状态检查脚本 # 用法: ./deploy-check.sh [ai-proj|pipeXerp] set -e TOOLS_SERVER="root@101.200.136.200" TOOLS_KEY="~/.ssh/tools.pem" JOB_NAME="${1:-ai-proj}" echo "======================================" echo "Jenkins Job: $JOB_NAME" echo "======================================" ssh -i $TOOLS_KEY -o ConnectTimeout=5 $TOOLS_SERVER << EOF echo "--- 最近 5 次构建 ---" ls -lt /var/lib/jenkins/jobs/$JOB_NAME/builds/ 2>/dev/null | head -6 echo "" echo "--- 最近成功构建 ---" if [ -L /var/lib/jenkins/jobs/$JOB_NAME/builds/lastSuccessfulBuild ]; then BUILD_NUM=\$(readlink /var/lib/jenkins/jobs/$JOB_NAME/builds/lastSuccessfulBuild) echo "Build #\$BUILD_NUM" if [ -f "/var/lib/jenkins/jobs/$JOB_NAME/builds/\$BUILD_NUM/log" ]; then echo "构建时间: \$(stat -c %y /var/lib/jenkins/jobs/$JOB_NAME/builds/\$BUILD_NUM/log 2>/dev/null || stat -f %Sm /var/lib/jenkins/jobs/$JOB_NAME/builds/\$BUILD_NUM/log)" fi else echo "无成功构建记录" fi echo "" echo "--- 最近失败构建 ---" if [ -L /var/lib/jenkins/jobs/$JOB_NAME/builds/lastFailedBuild ]; then BUILD_NUM=\$(readlink /var/lib/jenkins/jobs/$JOB_NAME/builds/lastFailedBuild) echo "Build #\$BUILD_NUM" echo "错误日志(最后 20 行):" tail -20 /var/lib/jenkins/jobs/$JOB_NAME/builds/\$BUILD_NUM/log 2>/dev/null || echo "无法读取日志" else echo "无失败构建记录" fi EOF