| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- #!/bin/bash
- # 遇到错误立即退出
- set -e
- echo "========================================================"
- echo " ShuDao SafeAI 测试环境一键打包脚本 (Linux)"
- echo "========================================================"
- echo ""
- # 设置路径变量
- ROOT_DIR=$(pwd)
- FRONTEND_DIR="$ROOT_DIR/shudao-vue-frontend"
- BACKEND_DIR="$ROOT_DIR/shudao-go-backend"
- OUTPUT_DIR="$ROOT_DIR/deploy_output_test"
- # 1. 前端构建
- echo "[1/6] 正在构建前端项目 (Vue)..."
- cd "$FRONTEND_DIR"
- npm run build
- if [ $? -ne 0 ]; then
- echo "[ERROR] 前端构建失败!请检查错误信息。"
- exit 1
- fi
- echo "[SUCCESS] 前端构建完成。"
- echo ""
- # 2. 清理后端旧资源
- echo "[2/6] 清理后端旧资源..."
- cd "$ROOT_DIR"
- if [ -d "$BACKEND_DIR/assets" ]; then
- rm -rf "$BACKEND_DIR/assets"
- fi
- if [ -f "$BACKEND_DIR/views/index.html" ]; then
- rm -f "$BACKEND_DIR/views/index.html"
- fi
- echo "[SUCCESS] 清理完成。"
- echo ""
- # 3. 复制新资源
- echo "[3/6] 整合前端资源到后端..."
- mkdir -p "$BACKEND_DIR/assets"
- mkdir -p "$BACKEND_DIR/views"
- cp -r "$FRONTEND_DIR/dist/assets/"* "$BACKEND_DIR/assets/"
- cp "$FRONTEND_DIR/dist/index.html" "$BACKEND_DIR/views/index.html"
- echo "[SUCCESS] 资源整合完成。"
- echo ""
- # 4. 复制测试环境配置
- echo "[4/6] 复制测试环境配置..."
- mkdir -p "$BACKEND_DIR/conf"
- cp "$BACKEND_DIR/conf/app.conf.test" "$BACKEND_DIR/conf/app.conf"
- echo "[SUCCESS] 配置文件已更新为测试环境。"
- echo ""
- # 5. 后端打包 (Linux amd64)
- echo "[5/6] 正在打包后端 (Target: Linux/amd64)..."
- cd "$BACKEND_DIR"
- bee pack -be GOOS=linux -be GOARCH=amd64
- if [ $? -ne 0 ]; then
- echo "[ERROR] 后端打包失败!请确保已安装 bee 工具。"
- exit 1
- fi
- echo "[SUCCESS] 后端打包完成。"
- echo ""
- # 6. 解压验证
- echo "[6/6] 解压验证 (Output: deploy_output_test)..."
- cd "$ROOT_DIR"
- if [ -d "$OUTPUT_DIR" ]; then
- rm -rf "$OUTPUT_DIR"
- fi
- mkdir -p "$OUTPUT_DIR"
- if [ -f "$BACKEND_DIR/shudao-go-backend.tar.gz" ]; then
- tar -xzf "$BACKEND_DIR/shudao-go-backend.tar.gz" -C "$OUTPUT_DIR"
- # 重命名为测试环境包
- mv "$BACKEND_DIR/shudao-go-backend.tar.gz" "$BACKEND_DIR/shudao-go-backend-test.tar.gz"
- echo "[SUCCESS] 已解压到: $OUTPUT_DIR"
- else
- echo "[WARNING] 未找到压缩包,请手动检查。"
- fi
- echo ""
- echo "========================================================"
- echo " 打包流程全部完成!"
- echo "========================================================"
- echo ""
- echo "部署包位置: $BACKEND_DIR/shudao-go-backend-test.tar.gz"
- echo "解压预览: $OUTPUT_DIR"
- echo "环境: 测试环境 (172.16.29.101)"
- echo ""
|