diff --git a/scripts/deploy_244.sh b/scripts/deploy_244.sh new file mode 100644 index 00000000..0d18bcce --- /dev/null +++ b/scripts/deploy_244.sh @@ -0,0 +1,86 @@ +#!/bin/bash + +export deploy_path=/opt/webapps/bonus-material + +export app_workspace=/opt/builds/releases/Bonus-Cloud/24.9.0 +export biz_workspace=/home/jenkins/workspace/Bonus-Cloud-Material + +suffix="-material" + + +app_source_jars=( + "bonus-auth-24.9.0.jar" + "bonus-gateway-24.9.0.jar" + #"bonus-file-24.9.0.jar" + #"bonus-gen-24.9.0.jar" + #"bonus-job-24.9.0.jar" + "bonus-system-24.9.0.jar" + "bonus-visual-monitor-24.9.0.jar" +) + +#for source_jar in "${app_source_jars[@]}"; do +# cp -f ${app_workspace}/${source_jar} $deploy_path +# echo "copied ${app_workspace}/${source_jar} to $deploy_path" +#done +for source_jar in "${app_source_jars[@]}"; do + # 获取文件名(不带目录路径) + filename=$(basename "$source_jar") + echo "filename:$filename" + # 获取文件名(不带扩展名) + base_name="${filename%.jar}" + echo "filename:$base_name" + # 构造新的文件名 + new_filename="${base_name}${suffix}.jar" + echo "filename:$new_filename" + + cp -f ${app_workspace}/${source_jar} "$deploy_path/$new_filename" + echo "copied ${app_workspace}/${source_jar} to '$deploy_path/$new_filename'" +done + +cp -f ${biz_workspace}/"bonus-modules/bonus-material/target/bonus-material.jar" $deploy_path +echo "copied ${app_workspace}/${source_jar} to $deploy_path" + +# Define an array of JAR files to run +jars=("bonus-auth-24.9.0-material.jar --spring.config.location=file:auth_bootstrap.yml" +"bonus-gateway-24.9.0-material.jar --spring.config.location=file:gateway_bootstrap.yml" +"bonus-system-24.9.0-material.jar --spring.config.location=file:system_bootstrap.yml" +#"bonus-gen-24.9.0-material.jar --spring.config.location=file:gen_bootstrap.yml" +#"bonus-job-24.9.0-material.jar --spring.config.location=file:job_bootstrap.yml" +#"bonus-file-24.9.0-material.jar --spring.config.location=file:file_bootstrap.yml" +#"bonus-visual-24.9.0-monitor-material.jar --spring.config.location=file:visual_bootstrap.yml" +"bonus-material.jar --spring.config.location=file:material_bootstrap.yml") + +# 遍历数组并检查每个JAR文件的进程 +for jar_with_args in "${jars[@]}"; do + # 提取JAR文件名(不包括参数) + jar=$(echo $jar_with_args | awk '{print $1}') + + # 检查进程是否启动 + echo "原应用程序1 $jar " + pids=$(pgrep -f $jar || true) + echo "原应用程序2 $jar " + if [ -n "$pids" ]; then + echo "$jar is running with PID(s): $pids" + # 杀死进程 + for pid in $pids; do + kill -9 $pid + if [ $? -eq 0 ]; then + echo "Process $pid for $jar killed successfully" + else + echo "Failed to kill process $pid for $jar" + fi + done + else + echo "$jar is not running" + fi +done + +cd $deploy_path || { echo "Failed to change directory to $deploy_path"; exit 1; } +# Iterate over the JAR files array +for jar in "${jars[@]}"; do + echo "Starting $jar" + nohup /usr/local/jdk1.8.0/bin/java -jar $jar >/dev/null 2>&1 & +done + +echo "All JARs have been run successfully." +