fix(deploy): 版本比对统一用短哈希,修复永不匹配的bug

This commit is contained in:
gouki
2026-08-09 23:08:39 +00:00
parent 8dbccdb238
commit 88e7050cf0
+4 -2
View File
@@ -31,6 +31,8 @@ if [ -n "$(git status --porcelain)" ]; then
fi
git push origin "$BRANCH"
LOCAL=$(git rev-parse HEAD)
# /health 返回 7 位短哈希,比对统一用短哈希
LOCAL_SHORT=$(git rev-parse --short=7 HEAD)
echo " 本地版本 ${LOCAL:0:8} 已推送,等待 cc1 自动更新…"
echo "==> [2/3] 等待 cc1 更新(轮询 ${HEALTH_URL}"
@@ -43,7 +45,7 @@ deadline=$(( $(date +%s) + TIMEOUT ))
REMOTE=""
while [ "$(date +%s)" -lt "$deadline" ]; do
REMOTE=$(fetch_remote_commit)
if [ "$REMOTE" = "$LOCAL" ]; then
if [ "$REMOTE" = "$LOCAL_SHORT" ]; then
echo " ✅ cc1 已更新至 ${LOCAL:0:8}"
break
fi
@@ -51,7 +53,7 @@ while [ "$(date +%s)" -lt "$deadline" ]; do
sleep "$POLL_INTERVAL"
done
if [ "$REMOTE" != "$LOCAL" ]; then
if [ "$REMOTE" != "$LOCAL_SHORT" ]; then
echo "❌ 部署超时(${TIMEOUT}s 内 cc1 未更新至 ${LOCAL:0:8},当前线上 ${REMOTE:0:8}"
echo " 排查:ssh cc1 'journalctl -u vps-manager-update.service -n 30'"
exit 1