فهرست منبع

build(bd-location): 添加部署脚本和版本文件

- 新增 deploy.sh 脚本,实现 bd-app-backend 项目的编译、Docker 镜像构建和推送功能
- 创建 version 文件,记录当前版本号为 1.8
- 脚本支持版本号管理和多步骤选择执行
chen.cheng 9 ماه پیش
والد
کامیت
b7eb314195
2فایلهای تغییر یافته به همراه57 افزوده شده و 61 حذف شده
  1. 56 60
      bd-location/deploy.sh
  2. 1 1
      bd-location/version

+ 56 - 60
bd-location/deploy.sh

@@ -3,9 +3,15 @@
 # 设置变量
 PROJECT_NAME="bd-app-backend"
 DOCKER_IMAGE_NAME="bd-app-backend"
-REMOTE_REGISTRY="docker.xt.wenhq.top:8083/bd"
+REMOTE_REGISTRY=${REMOTE_REGISTRY:-"docker.xt.wenhq.top:8083/bd"}
 VERSION_FILE="version"
-echo "!!!!bd-app-backend docker 发布脚本"
+LOG_FILE="deploy.log"
+
+# 日志函数
+log() {
+  echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" | tee -a $LOG_FILE
+}
+
 # 读取当前版本号
 CURRENT_VERSION=$(cat $VERSION_FILE)
 if [ -z "$CURRENT_VERSION" ]; then
@@ -17,20 +23,21 @@ CURRENT_MAJOR=$(echo $CURRENT_VERSION | cut -d'.' -f1)
 CURRENT_MINOR=$(echo $CURRENT_VERSION | cut -d'.' -f2)
 
 # 用户选择是否修改大版本号
-read -p "是否修改大版本号?(y/n): " modify_major_version
+read -p "是否修改大版本号?(a/i/ne): " modify_major_version
 
-if [ "$modify_major_version" == "y" ]; then
-  read -p "请输入新的大版本号: " new_major_version
-  CURRENT_MAJOR=$new_major_version
+if [ "$modify_major_version" == "a" ]; then
+  CURRENT_MAJOR=$((CURRENT_MAJOR + 1))
   CURRENT_MINOR=0  # 重置小版本号
-else
+elif [ "$modify_major_version" == "i" ]; then
   CURRENT_MINOR=$((CURRENT_MINOR + 1))  # 增加小版本号
+else
+  echo "跳过版本号修改"
 fi
 
 # 更新版本号
 NEXT_VERSION="${CURRENT_MAJOR}.${CURRENT_MINOR}"
 echo $NEXT_VERSION > $VERSION_FILE
-
+echo "版本号:" $NEXT_VERSION
 # 用户选择执行的步骤
 echo "请选择要执行的步骤(输入数字):"
 echo "1. 编译bd-app-backend项目"
@@ -39,70 +46,59 @@ echo "3. 推送Docker镜像到远程仓库"
 echo "4. 执行所有步骤"
 read -p "请输入选项(1/2/3/4): " choice
 
+# 编译项目
+compile_project() {
+  log "开始编译bd-app-backend项目..."
+  mvn clean install
+  if [ $? -ne 0 ]; then
+    log "bd-app-backend项目编译失败。退出脚本。"
+    exit 1
+  fi
+  log "bd-app-backend项目编译完成"
+}
+
+# 构建Docker镜像
+build_docker_image() {
+  log "开始构建Docker镜像..."
+  docker build -t ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION} .
+  if [ $? -ne 0 ]; then
+    log "Docker镜像构建失败。退出脚本。"
+    exit 1
+  fi
+  log "Docker镜像构建完成"
+}
+
+# 推送Docker镜像到远程仓库
+push_docker_image() {
+  log "开始推送Docker镜像到远程仓库..."
+  docker push ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION}
+  if [ $? -ne 0 ]; then
+    log "Docker镜像推送失败。退出脚本。"
+    exit 1
+  fi
+  log "Docker镜像推送完成"
+}
+
 # 根据用户选择执行相应的步骤
 case $choice in
   1)
-    # 1. 编译Vue项目
-    echo "开始编译bd-app-backend项目..."
-    mvn clean install
-    if [ $? -ne 0 ]; then
-      echo "bd-app-backend项目编译失败。退出脚本。"
-      exit 1
-    fi
-    echo "bd-app-backend项目编译完成"
+    compile_project
     ;;
   2)
-    # 2. 构建Docker镜像
-    echo "开始构建Docker镜像..."
-    docker build -t ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION} .
-    if [ $? -ne 0 ]; then
-      echo "Docker镜像构建失败。退出脚本。"
-      exit 1
-    fi
-    echo "Docker镜像构建完成"
+    build_docker_image
     ;;
   3)
-    # 3. 推送Docker镜像到远程仓库
-    echo "开始推送Docker镜像到远程仓库..."
-    docker push ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION}
-    if [ $? -ne 0 ]; then
-      echo "Docker镜像推送失败。退出脚本。"
-      exit 1
-    fi
-    echo "Docker镜像推送完成"
+    push_docker_image
     ;;
   4)
-    # 1. 编译Vue项目
-    echo "开始编译bd-app-backend项目..."
-    mvn clean install
-    if [ $? -ne 0 ]; then
-      echo "bd-app-backend项目编译失败。退出脚本。"
-      exit 1
-    fi
-    echo "bd-app-backend项目编译完成"
-
-    # 2. 构建Docker镜像
-    echo "开始构建Docker镜像..."
-    docker build -t ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION} .
-    if [ $? -ne 0 ]; then
-      echo "Docker镜像构建失败。退出脚本。"
-      exit 1
-    fi
-    echo "Docker镜像构建完成"
-
-    # 3. 推送Docker镜像到远程仓库
-    echo "开始推送Docker镜像到远程仓库..."
-    docker push ${REMOTE_REGISTRY}/${DOCKER_IMAGE_NAME}:v${NEXT_VERSION}
-    if [ $? -ne 0 ]; then
-      echo "Docker镜像推送失败。退出脚本。"
-      exit 1
-    fi
-    echo "Docker镜像推送完成"
+    compile_project
+    build_docker_image
+    push_docker_image
     ;;
   *)
-    echo "无效的选项。退出脚本。"
+    log "无效的选项。退出脚本。"
     exit 1
     ;;
 esac
 
-echo "所有任务完成"
+log "所有任务完成"

+ 1 - 1
bd-location/version

@@ -1 +1 @@
-1.8
+2.0