47 lines
1.3 KiB
Bash
Executable File
47 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Close TalkEdit processes (Tauri dev and Python backend)
|
|
|
|
KILLED_ANY=0
|
|
BACKEND_PORT="${BACKEND_PORT:-8000}"
|
|
FRONTEND_PORT="${FRONTEND_PORT:-5173}"
|
|
|
|
kill_port() {
|
|
local port=$1
|
|
local name=$2
|
|
local pids
|
|
pids=$(lsof -ti tcp:"$port" 2>/dev/null)
|
|
if [[ -n "$pids" ]]; then
|
|
echo "Stopping $name (port $port, PID $pids)..."
|
|
kill "$pids" 2>/dev/null
|
|
KILLED_ANY=1
|
|
fi
|
|
}
|
|
|
|
kill_pattern() {
|
|
local pattern=$1
|
|
local label=$2
|
|
local pids
|
|
pids=$(pgrep -f "$pattern" 2>/dev/null)
|
|
if [[ -n "$pids" ]]; then
|
|
echo "Stopping $label..."
|
|
kill $pids 2>/dev/null
|
|
KILLED_ANY=1
|
|
fi
|
|
}
|
|
|
|
# --- TalkEdit (Tauri) ---
|
|
kill_port "$BACKEND_PORT" "TalkEdit"
|
|
kill_pattern "tauri.*TalkEdit\|TalkEdit.*tauri\|cargo.*tauri dev\|/TalkEdit/target/debug" "TalkEdit (Tauri dev)"
|
|
# Frontend dev server: first kill by listening port, then by known process patterns.
|
|
kill_port "$FRONTEND_PORT" "TalkEdit frontend"
|
|
kill_pattern "vite\|rsbuild\|npm.*run dev\|pnpm.*dev\|yarn.*dev" "TalkEdit frontend dev server"
|
|
|
|
# --- Orphaned uvicorn workers for TalkEdit ---
|
|
kill_pattern "uvicorn.*main:app.*--port ${BACKEND_PORT}" "leftover uvicorn workers (TalkEdit)"
|
|
|
|
if [[ $KILLED_ANY -eq 0 ]]; then
|
|
echo "Nothing to close — no TalkEdit processes found."
|
|
else
|
|
echo "Done."
|
|
fi
|