Bonus-Cloud-AI-V2/scripts/deploy.sh

76 lines
2.4 KiB
Bash
Raw Permalink Normal View History

2024-10-23 08:03:27 +08:00
#!/bin/bash
export deploy_path=/data/ceshi/gqk/bonus-ai-v2
2024-10-23 08:03:27 +08:00
export app_workspace=/home/jenkins/workspace/Bonus-Cloud
2024-11-20 14:07:37 +08:00
export ai_workspace=/home/jenkins/workspace/Bonus-Cloud-AI-V2
2024-10-23 08:03:27 +08:00
2024-11-20 14:07:37 +08:00
suffix="-ai-v2"
2024-10-23 08:03:27 +08:00
app_source_jars=(
"bonus-auth/target/bonus-auth.jar"
"bonus-gateway/target/bonus-gateway.jar"
"bonus-modules/bonus-system/target/bonus-system.jar"
"bonus-modules/bonus-file/target/bonus-file.jar"
2024-10-23 08:03:27 +08:00
)
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"
scp "root@192.168.0.56:"${app_workspace}/${source_jar} "$deploy_path/$new_filename"
2024-10-23 08:03:27 +08:00
echo "copied ${app_workspace}/${source_jar} to '$deploy_path/$new_filename'"
done
scp "root@192.168.0.56:"${ai_workspace}/"bonus-modules/bonus-ai/target/bonus-modules-ai-v2.jar" $deploy_path
2024-10-23 08:03:27 +08:00
echo "copied ${app_workspace}/${source_jar} to $deploy_path"
# Define an array of JAR files to run
2024-11-20 14:07:37 +08:00
jars=("bonus-auth-ai-v2.jar --spring.config.location=file:auth_bootstrap.yml"
"bonus-gateway-ai-v2.jar --spring.config.location=file:gateway_bootstrap.yml"
"bonus-system-ai-v2.jar --spring.config.location=file:system_bootstrap.yml"
"bonus-file-ai-V2.jar --spring.config.location=file:file_bootstrap.yml")
2024-10-23 08:03:27 +08:00
# 遍历数组并检查每个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 java -jar $jar >/dev/null 2>&1 &
2024-10-23 08:03:27 +08:00
done
echo "All JARs have been run successfully."