8cb836e16c
Replace all if/else chains keyed on provider type strings with a descriptor-driven architecture. Each provider type (immich, gitea, planka, scheduler, nut, google_photos) has a descriptor in frontend/src/lib/providers/ that declares config fields, event tracking fields, collection metadata, validation, and hooks. Components now use getDescriptor(type) and render dynamically. Dashboard provider card shows provider name + type when global filter is active. Grid-items derived from registry.
24 lines
696 B
Bash
24 lines
696 B
Bash
#!/usr/bin/env bash
|
|
# Restart the backend dev server.
|
|
# Usage: bash scripts/restart-backend.sh
|
|
|
|
set -e
|
|
cd "$(dirname "$0")/.."
|
|
|
|
# Kill existing backend
|
|
PID=$(netstat -ano 2>/dev/null | grep ':8420.*LISTENING' | awk '{print $5}' | head -1)
|
|
if [ -n "$PID" ]; then
|
|
taskkill //F //PID "$PID" 2>/dev/null || true
|
|
sleep 1
|
|
fi
|
|
|
|
# Start backend
|
|
NOTIFY_BRIDGE_DATA_DIR=./test-data \
|
|
NOTIFY_BRIDGE_SECRET_KEY=test-secret-key-minimum-32chars \
|
|
PYTHON=$(command -v python3 2>/dev/null || command -v python 2>/dev/null || command -v py 2>/dev/null)
|
|
nohup "$PYTHON" -m uvicorn notify_bridge_server.main:app \
|
|
--host 0.0.0.0 --port 8420 > /dev/null 2>&1 &
|
|
|
|
sleep 3
|
|
curl -s http://localhost:8420/api/health
|