gemini-2api / update.bat
xiaoyukkkk's picture
Upload 12 files
2586f2a verified
@echo off
REM Gemini Business2API Update Script for Windows
REM This script updates the project to the latest version
setlocal enabledelayedexpansion
echo ==========================================
echo Gemini Business2API Update Script
echo ==========================================
echo.
REM Check if git is installed
where git >nul 2>nul
if %errorlevel% neq 0 (
echo [ERROR] Git is not installed. Please install git first.
exit /b 1
)
REM Check if python is installed
where python >nul 2>nul
if %errorlevel% neq 0 (
echo [ERROR] Python is not installed. Please install Python 3.11+ first.
exit /b 1
)
REM Step 1: Backup current .env file
echo [INFO] Backing up .env file...
if exist ".env" (
copy /Y ".env" ".env.backup" >nul
echo [SUCCESS] .env backed up to .env.backup
) else (
echo [INFO] No .env file found, skipping backup
)
REM Step 2: Pull latest code from git
echo [INFO] Pulling latest code from git...
git fetch origin
git pull origin main 2>nul
if %errorlevel% neq 0 (
git pull origin master 2>nul
if %errorlevel% neq 0 (
echo [ERROR] Failed to pull latest code
exit /b 1
)
)
echo [SUCCESS] Code updated successfully
REM Step 3: Restore .env file
if exist ".env.backup" (
echo [INFO] Restoring .env file...
move /Y ".env.backup" ".env" >nul
echo [SUCCESS] .env restored
)
REM Step 4: Update Python dependencies
echo [INFO] Updating Python dependencies...
REM Check if virtual environment exists
if exist ".venv\Scripts\activate.bat" (
echo [INFO] Virtual environment detected, activating...
call .venv\Scripts\activate.bat
)
python -m pip install -r requirements.txt --upgrade
if %errorlevel% neq 0 (
echo [ERROR] Failed to update Python dependencies
exit /b 1
)
echo [SUCCESS] Python dependencies updated
REM Step 5: Update frontend dependencies
if exist "frontend" (
echo [INFO] Updating frontend dependencies...
cd frontend
REM Check if npm is installed
where npm >nul 2>nul
if %errorlevel% equ 0 (
call npm install
if %errorlevel% equ 0 (
call npm run build
if %errorlevel% equ 0 (
echo [SUCCESS] Frontend dependencies updated and built
) else (
echo [ERROR] Frontend build failed
)
) else (
echo [ERROR] npm install failed
)
) else (
echo [WARNING] npm is not installed. Skipping frontend update.
)
cd ..
)
REM Step 6: Show completion message
echo.
echo ==========================================
echo [SUCCESS] Update completed successfully!
echo ==========================================
echo.
echo [INFO] To restart the service, run:
echo python main.py
echo.
echo [INFO] Or if running as a Windows service:
echo net stop gemini-business2api
echo net start gemini-business2api
echo.
endlocal