基本结构以及计算降雨栅格
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
@echo off
|
||||
REM Windows startup script - Development environment (background mode)
|
||||
echo ========================================
|
||||
echo Starting Development Environment
|
||||
echo ========================================
|
||||
|
||||
REM Change to project root directory
|
||||
cd /d "%~dp0.."
|
||||
|
||||
REM Verify we are in the correct directory
|
||||
if not exist "start.py" (
|
||||
echo Error: Cannot find start.py in current directory: %CD%
|
||||
echo Please ensure you are running this script from the project directory
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Current directory: %CD%
|
||||
|
||||
REM Check and create virtual environment if not exists
|
||||
if not exist ".venv\Scripts\activate.bat" (
|
||||
echo Virtual environment not found, creating...
|
||||
python -m venv .venv
|
||||
if errorlevel 1 (
|
||||
echo Error: Failed to create virtual environment
|
||||
echo Please ensure Python is installed and accessible
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Virtual environment created successfully
|
||||
)
|
||||
|
||||
REM Activate virtual environment
|
||||
call .venv\Scripts\activate.bat
|
||||
if errorlevel 1 (
|
||||
echo Error: Failed to activate virtual environment
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Virtual environment activated
|
||||
|
||||
REM Upgrade pip and install dependencies
|
||||
echo Checking dependencies...
|
||||
.venv\Scripts\python.exe -m pip install --upgrade pip -q
|
||||
.venv\Scripts\python.exe -m pip install -r requirements.txt -q
|
||||
if errorlevel 1 (
|
||||
echo Error: Failed to install dependencies
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Dependencies installed successfully
|
||||
|
||||
REM Create logs directory if not exists
|
||||
if not exist "logs" mkdir logs
|
||||
|
||||
REM Start application in background using start command
|
||||
REM Create a temporary startup script with clean environment
|
||||
set TEMP_START_SCRIPT=%TEMP%\start_xian_app_%RANDOM%.bat
|
||||
(
|
||||
echo @echo off
|
||||
echo cd /d %CD%
|
||||
echo set ENVIRONMENT=development
|
||||
echo .venv\Scripts\python.exe start.py
|
||||
) > "%TEMP_START_SCRIPT%"
|
||||
|
||||
start "Xian Algorithm Dev" cmd /k "title Xian Algorithm Dev && call "%TEMP_START_SCRIPT%""
|
||||
|
||||
echo.
|
||||
echo Application started in background
|
||||
echo To view logs, check: logs\app_*.log
|
||||
echo To stop the application, run: scripts\stop.bat
|
||||
echo ========================================
|
||||
|
||||
REM Keep the window open briefly to show any immediate errors
|
||||
timeout /t 3 /nobreak >nul
|
||||
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# Linux/Mac startup script - Development environment (background mode)
|
||||
|
||||
echo "========================================"
|
||||
echo " Starting Development Environment"
|
||||
echo "========================================"
|
||||
|
||||
# Change to project root directory
|
||||
cd "$(dirname "$0")/.." || exit
|
||||
|
||||
# Check and create virtual environment if not exists
|
||||
if [ ! -f ".venv/bin/activate" ]; then
|
||||
echo "Virtual environment not found, creating..."
|
||||
python3 -m venv .venv
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error: Failed to create virtual environment"
|
||||
echo "Please ensure Python 3 is installed and accessible"
|
||||
exit 1
|
||||
fi
|
||||
echo "Virtual environment created successfully"
|
||||
fi
|
||||
|
||||
# Activate virtual environment
|
||||
source .venv/bin/activate
|
||||
echo "Virtual environment activated"
|
||||
|
||||
# Upgrade pip and install dependencies
|
||||
echo "Checking dependencies..."
|
||||
pip install --upgrade pip -q
|
||||
pip install -r requirements.txt -q
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error: Failed to install dependencies"
|
||||
exit 1
|
||||
fi
|
||||
echo "Dependencies installed successfully"
|
||||
|
||||
# Set environment variable
|
||||
export ENVIRONMENT=development
|
||||
|
||||
# Create logs directory if not exists
|
||||
mkdir -p logs
|
||||
|
||||
# Start application in background
|
||||
nohup python start.py > logs/app_dev.log 2>&1 &
|
||||
APP_PID=$!
|
||||
|
||||
echo $APP_PID > scripts/app_dev.pid
|
||||
echo ""
|
||||
echo "Application started in background (PID: $APP_PID)"
|
||||
echo "To view logs: tail -f logs/app_dev.log"
|
||||
echo "To stop the application, run: bash scripts/stop.sh"
|
||||
echo "========================================"
|
||||
@@ -0,0 +1,52 @@
|
||||
@echo off
|
||||
REM Windows startup script - Production environment (background mode)
|
||||
echo ========================================
|
||||
echo Starting Production Environment
|
||||
echo ========================================
|
||||
|
||||
REM Change to project root directory
|
||||
cd /d "%~dp0.."
|
||||
|
||||
REM Check and create virtual environment if not exists
|
||||
if not exist ".venv\Scripts\activate.bat" (
|
||||
echo Virtual environment not found, creating...
|
||||
python -m venv .venv
|
||||
if errorlevel 1 (
|
||||
echo Error: Failed to create virtual environment
|
||||
echo Please ensure Python is installed and accessible
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Virtual environment created successfully
|
||||
)
|
||||
|
||||
REM Activate virtual environment
|
||||
call .venv\Scripts\activate.bat
|
||||
echo Virtual environment activated
|
||||
|
||||
REM Upgrade pip and install dependencies
|
||||
echo Checking dependencies...
|
||||
.venv\Scripts\python.exe -m pip install --upgrade pip -q
|
||||
.venv\Scripts\python.exe -m pip install -r requirements.txt -q
|
||||
if errorlevel 1 (
|
||||
echo Error: Failed to install dependencies
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
echo Dependencies installed successfully
|
||||
|
||||
REM Set environment variable
|
||||
set ENVIRONMENT=production
|
||||
|
||||
REM Create logs directory if not exists
|
||||
if not exist "logs" mkdir logs
|
||||
|
||||
REM Start application in background using start command
|
||||
start "Xian Algorithm Prod" cmd /c "title Xian Algorithm Prod && .venv\Scripts\python.exe start.py"
|
||||
|
||||
echo.
|
||||
echo Application started in background
|
||||
echo To view logs, check: logs\app_*.log
|
||||
echo To stop the application, run: scripts\stop.bat
|
||||
echo ========================================
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
#!/bin/bash
|
||||
# Linux/Mac startup script - Production environment (background mode)
|
||||
|
||||
echo "========================================"
|
||||
echo " Starting Production Environment"
|
||||
echo "========================================"
|
||||
|
||||
# Change to project root directory
|
||||
cd "$(dirname "$0")/.." || exit
|
||||
|
||||
# Check and create virtual environment if not exists
|
||||
if [ ! -f ".venv/bin/activate" ]; then
|
||||
echo "Virtual environment not found, creating..."
|
||||
python3 -m venv .venv
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error: Failed to create virtual environment"
|
||||
echo "Please ensure Python 3 is installed and accessible"
|
||||
exit 1
|
||||
fi
|
||||
echo "Virtual environment created successfully"
|
||||
fi
|
||||
|
||||
# Activate virtual environment
|
||||
source .venv/bin/activate
|
||||
echo "Virtual environment activated"
|
||||
|
||||
# Upgrade pip and install dependencies
|
||||
echo "Checking dependencies..."
|
||||
pip install --upgrade pip -q
|
||||
pip install -r requirements.txt -q
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error: Failed to install dependencies"
|
||||
exit 1
|
||||
fi
|
||||
echo "Dependencies installed successfully"
|
||||
|
||||
# Set environment variable
|
||||
export ENVIRONMENT=production
|
||||
|
||||
# Create logs directory if not exists
|
||||
mkdir -p logs
|
||||
|
||||
# Start application in background
|
||||
nohup python start.py > logs/app_prod.log 2>&1 &
|
||||
APP_PID=$!
|
||||
|
||||
echo $APP_PID > scripts/app_prod.pid
|
||||
echo ""
|
||||
echo "Application started in background (PID: $APP_PID)"
|
||||
echo "To view logs: tail -f logs/app_prod.log"
|
||||
echo "To stop the application, run: bash scripts/stop.sh"
|
||||
echo "========================================"
|
||||
@@ -0,0 +1,29 @@
|
||||
@echo off
|
||||
REM Windows stop script - Stop the application
|
||||
echo ========================================
|
||||
echo Stopping Application
|
||||
echo ========================================
|
||||
|
||||
REM Change to project root directory
|
||||
cd /d "%~dp0.."
|
||||
|
||||
REM Find and kill python processes running start.py
|
||||
echo Searching for running application...
|
||||
tasklist /FI "IMAGENAME eq python.exe" /FO CSV /NH 2>nul | findstr /I "python.exe" >nul
|
||||
if %errorlevel% equ 0 (
|
||||
echo Found running Python processes, stopping...
|
||||
taskkill /F /FI "WINDOWTITLE eq Xian Algorithm Dev" 2>nul
|
||||
taskkill /F /FI "WINDOWTITLE eq Xian Algorithm Prod" 2>nul
|
||||
|
||||
REM If title-based kill didn't work, try killing all python.exe running start.py
|
||||
for /f "tokens=2 delims=," %%a in ('tasklist /FI "IMAGENAME eq python.exe" /FO CSV /NH 2^>nul') do (
|
||||
set "PID=%%~a"
|
||||
wmic process where "ProcessId=!PID! and CommandLine like '%%start.py%%'" delete >nul 2>&1
|
||||
)
|
||||
|
||||
echo Application stopped successfully
|
||||
) else (
|
||||
echo No running application found
|
||||
)
|
||||
|
||||
echo ========================================
|
||||
@@ -0,0 +1,67 @@
|
||||
#!/bin/bash
|
||||
# Linux/Mac stop script - Stop the application
|
||||
|
||||
echo "========================================"
|
||||
echo " Stopping Application"
|
||||
echo "========================================"
|
||||
|
||||
# Change to project root directory
|
||||
cd "$(dirname "$0")/.." || exit
|
||||
|
||||
# Function to stop a process by PID file
|
||||
stop_process() {
|
||||
local pid_file=$1
|
||||
local env_name=$2
|
||||
|
||||
if [ -f "$pid_file" ]; then
|
||||
local pid=$(cat "$pid_file")
|
||||
if kill -0 "$pid" 2>/dev/null; then
|
||||
echo "Stopping $env_name (PID: $pid)..."
|
||||
kill "$pid"
|
||||
|
||||
# Wait for process to stop
|
||||
local count=0
|
||||
while kill -0 "$pid" 2>/dev/null && [ $count -lt 10 ]; do
|
||||
sleep 1
|
||||
count=$((count + 1))
|
||||
done
|
||||
|
||||
# Force kill if still running
|
||||
if kill -0 "$pid" 2>/dev/null; then
|
||||
echo "Force stopping $env_name..."
|
||||
kill -9 "$pid"
|
||||
fi
|
||||
|
||||
rm -f "$pid_file"
|
||||
echo "$env_name stopped"
|
||||
else
|
||||
echo "$env_name not running (stale PID file removed)"
|
||||
rm -f "$pid_file"
|
||||
fi
|
||||
else
|
||||
echo "No $env_name PID file found"
|
||||
fi
|
||||
}
|
||||
|
||||
# Stop development environment
|
||||
stop_process "scripts/app_dev.pid" "Development environment"
|
||||
|
||||
# Stop production environment
|
||||
stop_process "scripts/app_prod.pid" "Production environment"
|
||||
|
||||
# Also try to find any remaining python processes running start.py
|
||||
REMAINING_PIDS=$(ps aux | grep "[p]ython.*start.py" | awk '{print $2}')
|
||||
if [ -n "$REMAINING_PIDS" ]; then
|
||||
echo "Found additional Python processes, stopping..."
|
||||
echo "$REMAINING_PIDS" | xargs kill 2>/dev/null
|
||||
sleep 2
|
||||
|
||||
# Force kill if still running
|
||||
REMAINING_PIDS=$(ps aux | grep "[p]ython.*start.py" | awk '{print $2}')
|
||||
if [ -n "$REMAINING_PIDS" ]; then
|
||||
echo "$REMAINING_PIDS" | xargs kill -9 2>/dev/null
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "========================================"
|
||||
echo "All applications stopped"
|
||||
Reference in New Issue
Block a user