release(main): 同步部署更新实时进度
Storage Persistence Guard / storage-persistence-audit (push) Has been cancelled
Client Quality Gates / Shared client and Web (pull_request) Has been cancelled
Client Quality Gates / macOS Desktop (pull_request) Has been cancelled
Storage Persistence Guard / storage-persistence-audit (pull_request) Has been cancelled
Storage Persistence Guard / storage-persistence-audit (push) Has been cancelled
Client Quality Gates / Shared client and Web (pull_request) Has been cancelled
Client Quality Gates / macOS Desktop (pull_request) Has been cancelled
Storage Persistence Guard / storage-persistence-audit (pull_request) Has been cancelled
This commit is contained in:
@@ -155,6 +155,8 @@ bash scripts/install.sh release --base-url https://ctms.example.com
|
|||||||
7. 检查容器状态、后端环境、/health、/api/v1/auth/login-key。
|
7. 检查容器状态、后端环境、/health、/api/v1/auth/login-key。
|
||||||
```
|
```
|
||||||
|
|
||||||
|
更新进入“执行部署更新”后会持续显示 Docker 镜像拉取与构建进度:交互终端使用滚动实时输出窗口,CI、远程面板或管道环境直接流式输出构建日志,并在两种模式下显示累计耗时。
|
||||||
|
|
||||||
脚本不会执行:
|
脚本不会执行:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
|
|||||||
+22
-9
@@ -345,7 +345,7 @@ ctms_run_quiet() {
|
|||||||
mkdir -p "$CTMS_LOG_DIR"
|
mkdir -p "$CTMS_LOG_DIR"
|
||||||
local log_file
|
local log_file
|
||||||
log_file="$(mktemp "$CTMS_LOG_DIR/cmd_XXXXXXXX")"
|
log_file="$(mktemp "$CTMS_LOG_DIR/cmd_XXXXXXXX")"
|
||||||
local start_ts elapsed exit_code
|
local start_ts elapsed exit_code streamed_output=0
|
||||||
start_ts="$(date +%s)"
|
start_ts="$(date +%s)"
|
||||||
|
|
||||||
set +e
|
set +e
|
||||||
@@ -368,9 +368,16 @@ ctms_run_quiet() {
|
|||||||
printf '\r\033[K'
|
printf '\r\033[K'
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf ' %s%s%s %s …\n' "${CC_MUTED}" "$ICON_INFO" "${C_RESET}" "$label"
|
if [[ "${CTMS_LIVE_OUTPUT:-0}" -eq 1 ]]; then
|
||||||
"$@" >"$log_file" 2>&1
|
printf ' %s%s%s %s(实时输出)\n' "${CC_INFO}${C_BOLD}" "$ICON_INFO" "${C_RESET}" "$label"
|
||||||
exit_code=$?
|
"$@" 2>&1 | tee "$log_file"
|
||||||
|
exit_code="${PIPESTATUS[0]}"
|
||||||
|
streamed_output=1
|
||||||
|
else
|
||||||
|
printf ' %s%s%s %s …\n' "${CC_MUTED}" "$ICON_INFO" "${C_RESET}" "$label"
|
||||||
|
"$@" >"$log_file" 2>&1
|
||||||
|
exit_code=$?
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
@@ -381,11 +388,17 @@ ctms_run_quiet() {
|
|||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
printf '\n %s%s%s %s%s 失败(耗时 %ss),完整输出:%s\n\n' \
|
if [[ "$streamed_output" -eq 1 ]]; then
|
||||||
"${CC_DANGER}${C_BOLD}" "$ICON_FAIL" "${C_RESET}" "${CC_DANGER}" "$label" "$elapsed" "${C_RESET}" >&2
|
printf '\n %s%s%s %s%s 失败(耗时 %ss),输出已在上方实时展示。%s\n\n' \
|
||||||
sed 's/^/ /' "$log_file" >&2
|
"${CC_DANGER}${C_BOLD}" "$ICON_FAIL" "${C_RESET}" "${CC_DANGER}" "$label" "$elapsed" "${C_RESET}" >&2
|
||||||
printf '\n' >&2
|
ctms_fail "命令执行失败,详细日志保留于:${log_file#"$CTMS_ROOT_DIR"/}"
|
||||||
ctms_fail "命令执行失败,详细日志保留于:${log_file#"$CTMS_ROOT_DIR"/}(追加 --verbose 可看实时输出)"
|
else
|
||||||
|
printf '\n %s%s%s %s%s 失败(耗时 %ss),完整输出:%s\n\n' \
|
||||||
|
"${CC_DANGER}${C_BOLD}" "$ICON_FAIL" "${C_RESET}" "${CC_DANGER}" "$label" "$elapsed" "${C_RESET}" >&2
|
||||||
|
sed 's/^/ /' "$log_file" >&2
|
||||||
|
printf '\n' >&2
|
||||||
|
ctms_fail "命令执行失败,详细日志保留于:${log_file#"$CTMS_ROOT_DIR"/}(追加 --verbose 可看实时输出)"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# 固定占用 9 行:上边框 + 6 行日志 + 下边框 + 状态行。
|
# 固定占用 9 行:上边框 + 6 行日志 + 下边框 + 状态行。
|
||||||
|
|||||||
+3
-2
@@ -554,8 +554,9 @@ run_install_script() {
|
|||||||
local install_script="$CTMS_ROOT_DIR/scripts/install.sh"
|
local install_script="$CTMS_ROOT_DIR/scripts/install.sh"
|
||||||
[[ -x "$install_script" ]] || ctms_fail "安装脚本不可执行: $install_script"
|
[[ -x "$install_script" ]] || ctms_fail "安装脚本不可执行: $install_script"
|
||||||
|
|
||||||
ctms_info "调用安装脚本完成容器更新..."
|
ctms_info "调用安装脚本完成容器更新,镜像拉取与构建进度将在下方实时显示..."
|
||||||
"$install_script" "$TARGET_ENV" "${INSTALL_ARGS[@]}"
|
COMPOSE_PROGRESS=plain BUILDKIT_PROGRESS=plain \
|
||||||
|
"$install_script" "$TARGET_ENV" "${INSTALL_ARGS[@]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# ── 完成提示 ─────────────────────────────────
|
# ── 完成提示 ─────────────────────────────────
|
||||||
|
|||||||
Reference in New Issue
Block a user