From 54a8571c4ec5071219a155f4eee7f2a50c617374 Mon Sep 17 00:00:00 2001 From: "sundapeng.sdp" Date: Wed, 24 Sep 2025 15:36:58 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E5=A4=B1=E8=B4=A5=E5=AF=BC=E8=87=B4=E7=9A=84?= =?UTF-8?q?=E4=BA=8C=E6=AC=A1=E5=AE=89=E8=A3=85=E9=97=AE=E9=A2=98=EF=BC=9B?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=BC=BA=E5=B0=91deps=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E9=97=AE=E9=A2=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refs #3 --- .../demo-all-in-one/publish_artifact.sh | 7 +++ .../client-plugins/demo-all-in-one/setup.sh | 47 ++++++++++--------- 2 files changed, 31 insertions(+), 23 deletions(-) diff --git a/src/metric/client-plugins/demo-all-in-one/publish_artifact.sh b/src/metric/client-plugins/demo-all-in-one/publish_artifact.sh index 710b27a..d346622 100755 --- a/src/metric/client-plugins/demo-all-in-one/publish_artifact.sh +++ b/src/metric/client-plugins/demo-all-in-one/publish_artifact.sh @@ -104,6 +104,13 @@ if [[ -f "uninstall_artifact.sh" ]]; then cp "uninstall_artifact.sh" "$TEMP_PACKAGE_DIR/uninstall.sh" fi +# 复制 deps 目录 +if [[ -d "$ARTIFACT_DIR/deps" ]]; then + log_info "复制系统依赖包..." + cp -r "$ARTIFACT_DIR/deps" "$TEMP_PACKAGE_DIR/" + log_success "系统依赖包复制完成" +fi + # 创建tar包,使用新的命名规范 TAR_NAME="argus-metric_$(echo $VERSION | tr '.' '_').tar.gz" log_info "创建发布包: $TAR_NAME" diff --git a/src/metric/client-plugins/demo-all-in-one/setup.sh b/src/metric/client-plugins/demo-all-in-one/setup.sh index 87128f7..e0c7ef5 100644 --- a/src/metric/client-plugins/demo-all-in-one/setup.sh +++ b/src/metric/client-plugins/demo-all-in-one/setup.sh @@ -347,7 +347,7 @@ rollback_to_backup() { log_success "版本回滚完成: $backup_name" # 启动服务 - start_services + # start_services return 0 else log_error "版本回滚失败" @@ -416,27 +416,28 @@ manual_stop_services() { start_services() { log_info "启动服务..." - if [[ -f "$CURRENT_LINK/install.sh" ]]; then - cd "$CURRENT_LINK" - chmod +x install.sh - - # 检查服务是否已经在运行 - if check_services_running; then - log_info "服务已在运行,跳过启动" - return 0 - fi - - # 启动服务 - 传递正确的安装目录参数 - if ./install.sh "$INSTALL_DIR" 2>/dev/null; then - log_success "服务启动完成" - else - log_error "服务启动失败" - return 1 - fi - else - log_error "未找到安装脚本" - return 1 + # 检查服务是否已经在运行 + if check_services_running; then + log_info "服务已在运行,跳过启动" + return 0 fi + + # 由于 install_artifact.sh 已经安装了所有组件并设置了健康检查定时任务 + # 这里只需要简单验证服务状态即可 + log_info "组件已安装完成,健康检查定时任务已设置" + log_info "服务将在健康检查时自动启动(每5分钟检查一次)" + + # 等待一下让服务有时间启动 + sleep 3 + + # 验证服务状态 + if check_services_running; then + log_success "服务启动成功" + else + log_info "服务可能正在启动中,健康检查机制将自动监控" + fi + + return 0 } # 检查服务是否正在运行 @@ -605,7 +606,7 @@ install_argus_metric() { cd "$version_dir" if [[ -f "install.sh" ]]; then chmod +x install.sh - # 传递版本目录作为安装目录给安装脚本 + # 传递安装根目录给安装脚本,让install_artifact.sh安装到正确的版本目录 if ./install.sh "$version_dir"; then log_success "安装脚本执行完成" else @@ -639,7 +640,7 @@ install_argus_metric() { update_latest_version_file "$ARGUS_VERSION" # 启动服务 - start_services + # start_services log_success "Argus Metric v$ARGUS_VERSION 安装完成!"