likwid/scripts/dev-stop.sh
Marco Allegretti 910a6465f2 Initial commit: Likwid governance platform
- Backend: Rust/Axum with PostgreSQL, plugin architecture
- Frontend: Astro with polished UI
- Voting methods: Approval, Ranked Choice, Schulze, STAR, Quadratic
- Features: Liquid delegation, transparent moderation, structured deliberation
- Documentation: User and admin guides in /docs
- Deployment: Docker/Podman compose files for production and demo
- Demo: Seeded data with 3 communities, 13 users, 7 proposals

License: AGPLv3
2026-01-27 17:21:58 +01:00

54 lines
1.5 KiB
Bash

#!/bin/bash
# Likwid Development Environment Stopper
# Stops backend, frontend, and optionally PostgreSQL
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="$(dirname "$SCRIPT_DIR")"
STATE_DIR="$SCRIPT_DIR/.dev"
STATE_FILE="$STATE_DIR/state.json"
STOP_DB="${1:-false}"
echo "Stopping Likwid development environment..."
# Read state file
if [ -f "$STATE_FILE" ]; then
BACKEND_PID=$(jq -r '.backendPid // empty' "$STATE_FILE" 2>/dev/null)
FRONTEND_PID=$(jq -r '.frontendPid // empty' "$STATE_FILE" 2>/dev/null)
# Stop backend
if [ -n "$BACKEND_PID" ]; then
if kill -0 "$BACKEND_PID" 2>/dev/null; then
echo "Stopping backend (PID $BACKEND_PID)..."
kill "$BACKEND_PID" 2>/dev/null || true
sleep 1
kill -9 "$BACKEND_PID" 2>/dev/null || true
fi
fi
# Stop frontend
if [ -n "$FRONTEND_PID" ]; then
if kill -0 "$FRONTEND_PID" 2>/dev/null; then
echo "Stopping frontend (PID $FRONTEND_PID)..."
kill "$FRONTEND_PID" 2>/dev/null || true
sleep 1
kill -9 "$FRONTEND_PID" 2>/dev/null || true
fi
fi
rm -f "$STATE_FILE"
fi
# Also kill any stray processes
pkill -f "likwid" 2>/dev/null || true
pkill -f "astro dev" 2>/dev/null || true
# Stop PostgreSQL if requested
if [ "$STOP_DB" = "--all" ] || [ "$STOP_DB" = "-a" ]; then
echo "Stopping PostgreSQL..."
podman-compose -f "$ROOT_DIR/compose/dev.yml" down 2>/dev/null || true
fi
echo "Done."