pp-planer/stop_dev.sh
Thorsten Bus 599b8635c9 feat(dev): migrate local development from Valet to DDEV
Production Caddy/FPM setup (build/Dockerfile, docker-compose.yml) is untouched -- this only swaps the local dev stack.

- .ddev/config.yaml: PHP 8.4, Node 20, sqlite (db container omitted), libreoffice/ghostscript/poppler/sqlite3 packages, Vite port 5173 via Traefik, post-start hooks bootstrap the app on every `ddev start`.
- .ddev/commands/web/dev: custom `ddev dev` runs queue + pail + vite (mirror of old `composer dev`).
- start_dev.sh / stop_dev.sh: rewritten as DDEV wrappers so devs can onboard without DDEV knowledge; --keep-ddev keeps containers up.
- vite.config.js: HMR over WSS to https://pp-planer.ddev.site:5173.
- playwright + auth.setup.ts: baseURL switched to https://pp-planer.ddev.site.
- .env.example: APP_URL and CHURCHTOOLS_REDIRECT_URI use ddev.site.
- composer: drop laravel/sail (replaced by DDEV).
- package.json: add explicit "name" so host/container lockfiles match (container WORKDIR is /var/www/html, npm would otherwise pick "html" as project name).
- tests/fixtures/propresenter/Test.pro: inline reference fixture; tests no longer depend on a sibling host directory.
- AGENTS.md: docs rewritten for DDEV workflow.
2026-05-03 18:46:48 +02:00

58 lines
1.5 KiB
Bash
Executable file
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
set -euo pipefail
PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)"
PID_FILE="$PROJECT_DIR/.dev.pid"
LOG_FILE="$PROJECT_DIR/.dev.log"
cd "$PROJECT_DIR"
GREEN='\033[0;32m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
CYAN='\033[0;36m'
NC='\033[0m'
KEEP_DDEV=false
if [ "${1:-}" = "--keep-ddev" ]; then
KEEP_DDEV=true
fi
if [ -f "$PID_FILE" ]; then
DEV_PID="$(cat "$PID_FILE")"
if kill -0 "$DEV_PID" 2>/dev/null; then
kill -TERM "$DEV_PID" 2>/dev/null || true
for _ in 1 2 3 4 5; do
kill -0 "$DEV_PID" 2>/dev/null || break
sleep 0.5
done
kill -0 "$DEV_PID" 2>/dev/null && kill -KILL "$DEV_PID" 2>/dev/null || true
echo -e " ${YELLOW}${NC} Dev-Worker (PID $DEV_PID) gestoppt"
else
echo -e " ${YELLOW}${NC} Dev-Worker waren bereits beendet"
fi
rm -f "$PID_FILE"
else
echo -e " ${YELLOW}${NC} Keine PID-Datei keine laufenden Dev-Worker"
fi
rm -f "$LOG_FILE"
if [ "$KEEP_DDEV" = true ]; then
echo ""
echo -e "${GREEN}Dev-Worker gestoppt. DDEV läuft weiter.${NC}"
echo -e " Komplett stoppen: ${CYAN}ddev stop${NC}"
echo ""
exit 0
fi
if command -v ddev >/dev/null 2>&1; then
echo -e "${YELLOW}▸ DDEV stoppen …${NC}"
ddev stop >/dev/null 2>&1 || true
echo -e " ${GREEN}${NC} DDEV gestoppt"
fi
echo ""
echo -e "${GREEN}Dev-Umgebung komplett gestoppt.${NC}"
echo -e " Tipp: ${CYAN}./stop_dev.sh --keep-ddev${NC} stoppt nur die Worker (DDEV bleibt an)"
echo ""