From 397a679ddbd1e86100eefb900e3a14f8201bfa77 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期二, 18 八月 2026 14:23:33 +0800
Subject: [PATCH] fix: MOM 1.打包部署修改

---
 deploy.bat |   66 ++++++++++++++++----------------
 1 files changed, 33 insertions(+), 33 deletions(-)

diff --git a/deploy.bat b/deploy.bat
index 658af05..493ce30 100644
--- a/deploy.bat
+++ b/deploy.bat
@@ -1,14 +1,14 @@
 @echo off
-chcp 65001 >nul
 setlocal enabledelayedexpansion
 
 :: ================= Config =================
+set "COMPANY=TEST"
 set "USER=root"
 set "PASS=Xdrjkj@10086#"
-set "IP=36.213.180.217"
+set "IP=36.213.90.123"
 set "PORT=65022"
-set "DIST_DIR=dist"
-set "REMOTE_DIR=/data/project/mom/vue/test"
+set "ZIP_FILE=dist.zip"
+set "REMOTE_DIR=/data/project/mom/vue/test/dist"
 set "SSH_OPTS=-o StrictHostKeyChecking=no -o ConnectTimeout=10"
 :: ===========================================
 
@@ -80,21 +80,22 @@
     echo.
 )
 
-:: Check if dist exists and ask user
-if exist "%DIST_DIR%" (
-    echo [WARN] dist directory already exists.
+:: Check if dist.zip exists and ask user
+if exist "%ZIP_FILE%" (
+    echo [WARN] %ZIP_FILE% already exists.
     set /p "REBUILD=Do you want to rebuild? (Y/N, default Y): "
     if /i "!REBUILD!"=="N" (
-        echo [INFO] Skip build, using existing dist
+        echo [INFO] Skip build, using existing %ZIP_FILE%
         goto :upload
     )
 )
 
 :: Build the project
-echo [STEP 1/3] Building project...
+echo [STEP 1/3] Building project for %COMPANY%...
 echo [INFO] Running: pnpm run build
 echo.
-call pnpm run build
+:: Pass VITE_COMPANY so vite.config.ts picks the right company (vite reads VITE_ prefixed env vars)
+set "VITE_COMPANY=!COMPANY!" && call pnpm run build
 if !errorlevel! neq 0 (
     echo [ERROR] Build failed! Check your project configuration.
     goto :error_exit
@@ -103,24 +104,18 @@
 echo.
 
 :upload
-if not exist "%DIST_DIR%" (
-    echo [ERROR] Dist directory not found: %DIST_DIR%
-    echo [HINT] Build may have failed or output directory is incorrect.
+if not exist "%ZIP_FILE%" (
+    echo [ERROR] %ZIP_FILE% not found.
+    echo [HINT] Build may have failed or VITE_ARCHIVER is not enabled in .env.production.
     goto :error_exit
 )
 
-:: Count files and calculate size
-set "FILE_COUNT=0"
-set "TOTAL_SIZE=0"
-for /r "%DIST_DIR%" %%F in (*) do (
-    set /a "FILE_COUNT+=1"
-    set /a "TOTAL_SIZE+=%%~zF"
-)
-set /a "TOTAL_SIZE_MB=TOTAL_SIZE/1024/1024"
+:: Calculate zip size
+for %%F in ("%ZIP_FILE%") do set "ZIP_BYTES=%%~zF"
+set /a "ZIP_SIZE_MB=ZIP_BYTES/1024/1024"
 
-echo [INFO] Dist directory: %DIST_DIR%
-echo [INFO] Files count: %FILE_COUNT%
-echo [INFO] Total size: %TOTAL_SIZE_MB% MB
+echo [INFO] Zip file: %ZIP_FILE%
+echo [INFO] Size: %ZIP_SIZE_MB% MB
 echo [INFO] Target: %USER%@%IP%:%PORT%
 echo [INFO] Remote dir: %REMOTE_DIR%
 echo.
@@ -132,9 +127,9 @@
     goto :end
 )
 
-:: Upload dist directory
-echo [STEP 2/3] Uploading dist directory...
-sshpass -p "%PASS%" scp -P %PORT% %SSH_OPTS% -r "%DIST_DIR%" %USER%@%IP%:%REMOTE_DIR%/
+:: Upload dist.zip
+echo [STEP 2/3] Uploading %ZIP_FILE%...
+sshpass -p "%PASS%" scp -P %PORT% %SSH_OPTS% "%ZIP_FILE%" %USER%@%IP%:%REMOTE_DIR%/
 if %errorlevel% neq 0 (
     echo [ERROR] Upload failed! Check network or credentials.
     goto :error_exit
@@ -142,18 +137,23 @@
 echo [OK] Upload completed!
 echo.
 
-:: Optional: Remote restart/cleanup (uncomment if needed)
-:: echo [STEP 3/3] Restarting remote service...
-:: sshpass -p "%PASS%" ssh -p %PORT% %SSH_OPTS% %USER%@%IP% "cd %REMOTE_DIR% && npm run restart"
-
+:: Remote unzip: cd to %REMOTE_DIR% then unzip -o ./dist.zip
+echo [STEP 3/3] Running remote: cd %REMOTE_DIR% && unzip -o ./%ZIP_FILE%
+sshpass -p "%PASS%" ssh -P %PORT% %SSH_OPTS% %USER%@%IP% "cd %REMOTE_DIR% && unzip -o ./%ZIP_FILE% && rm -f ./%ZIP_FILE%"
+if %errorlevel% neq 0 (
+    echo [ERROR] Remote unzip failed! Check if 'unzip' is installed on server.
+    goto :error_exit
+)
+echo [OK] Unzip completed! %ZIP_FILE% removed from remote.
 echo.
+
 echo ==========================================
 echo [SUCCESS] Deploy completed!
 echo ==========================================
 echo.
 echo Summary:
 echo   - Build: Completed
-echo   - Upload: %FILE_COUNT% files (%TOTAL_SIZE_MB% MB)
+echo   - Upload: %ZIP_FILE% (%ZIP_SIZE_MB% MB)
 echo   - Target: %USER%@%IP%:%PORT%%REMOTE_DIR%
 echo.
 
@@ -166,4 +166,4 @@
 echo ==========================================
 
 :end
-pause
\ No newline at end of file
+pause

--
Gitblit v1.9.3