Files
Web_BLS_Heartbeat_Server/scripts/update.bat

92 lines
2.2 KiB
Batchfile
Raw Normal View History

@echo off
chcp 65001 >nul
echo ========================================
echo BLS心跳接收端更新脚本
echo ========================================
setlocal enabledelayedexpansion
:: 检查服务是否运行
echo [1/6] 检查服务状态...
pm2 describe bls-heartbeat >nul 2>&1
if errorlevel 1 (
echo [警告] 服务未运行,跳过停止步骤
) else (
echo [信息] 停止服务...
pm2 stop bls-heartbeat
if errorlevel 1 (
echo [错误] 服务停止失败
pause
exit /b 1
)
)
:: 备份当前版本
echo [2/6] 备份当前版本...
if exist "dist" (
if exist "dist_backup" (
rmdir /s /q dist_backup
)
xcopy /E /I /Y dist dist_backup >nul
echo [成功] 当前版本已备份到dist_backup目录
) else (
echo [警告] 未找到dist目录跳过备份
)
:: 更新依赖
echo [3/6] 更新项目依赖...
call npm install --production
if errorlevel 1 (
echo [错误] 依赖更新失败
pause
exit /b 1
)
:: 检查构建文件
echo [4/6] 检查构建文件...
if not exist "dist\index.es.js" (
echo [错误] 未找到构建文件请确保已上传新版本的dist目录
pause
exit /b 1
)
echo [成功] 构建文件检查通过
:: 更新数据库(如果需要)
echo [5/6] 更新数据库...
echo [信息] 运行数据库更新脚本...
call npm run db:apply
if errorlevel 1 (
echo [警告] 数据库更新失败,请检查数据库连接配置
echo [提示] 可以稍后手动运行: npm run db:apply
) else (
echo [成功] 数据库更新完成
)
:: 启动服务
echo [6/6] 启动服务...
pm2 start ecosystem.config.cjs
if errorlevel 1 (
echo [错误] 服务启动失败
pause
exit /b 1
)
:: 显示服务状态
echo ========================================
echo 服务状态
echo ========================================
pm2 status
echo ========================================
echo 更新完成!
echo ========================================
echo.
echo 常用命令:
echo 查看状态: pm2 status
echo 查看日志: pm2 logs bls-heartbeat
echo 重启服务: pm2 restart bls-heartbeat
echo 停止服务: pm2 stop bls-heartbeat
echo 实时监控: pm2 monit
echo.
pause