#!/usr/bin/env bash
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
RUN_DIR="$ROOT/run"
|
LOG_DIR="$ROOT/logs"
|
BACKEND_PID="$RUN_DIR/backend.pid"
|
FRONTEND_PID="$RUN_DIR/frontend.pid"
|
BACKEND_PORT=8010
|
FRONTEND_PORT=5174
|
FRONTEND_DEV_PORT=5175
|
# prod:build + vite preview @5174;dev:vite dev @5175
|
FRONTEND_MODE="${FRONTEND_MODE:-prod}"
|
|
vite_project_pgrep() {
|
pgrep -f "$ROOT/frontend/node_modules/.bin/vite" 2>/dev/null || true
|
}
|
|
mkdir -p "$RUN_DIR" "$LOG_DIR"
|
|
is_running() {
|
local pid_file="$1"
|
[[ -f "$pid_file" ]] && kill -0 "$(cat "$pid_file")" 2>/dev/null
|
}
|
|
stop_pid_file() {
|
local pid_file="$1"
|
local name="$2"
|
if [[ -f "$pid_file" ]]; then
|
local pid
|
pid="$(cat "$pid_file")"
|
if kill -0 "$pid" 2>/dev/null; then
|
kill "$pid" 2>/dev/null || true
|
sleep 1
|
kill -9 "$pid" 2>/dev/null || true
|
echo "已停止 $name (PID $pid)"
|
fi
|
rm -f "$pid_file"
|
fi
|
}
|