From 5cf0c432416b2225add214533902adb43e6df03e Mon Sep 17 00:00:00 2001 From: Thorsten Bus Date: Sun, 29 Mar 2026 10:49:07 +0200 Subject: [PATCH] add start/stop dev scripts --- .gitignore | 2 ++ start_dev.sh | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ stop_dev.sh | 28 +++++++++++++++++++++++++ 3 files changed, 88 insertions(+) create mode 100755 start_dev.sh create mode 100755 stop_dev.sh diff --git a/.gitignore b/.gitignore index d4c3474..6a78276 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,5 @@ Homestead.yaml Thumbs.db tests/e2e/.auth/ test-results/ +.php-cs-fixer.cache +.dev.pid diff --git a/start_dev.sh b/start_dev.sh new file mode 100755 index 0000000..0b2bd61 --- /dev/null +++ b/start_dev.sh @@ -0,0 +1,58 @@ +#!/usr/bin/env bash +set -euo pipefail + +PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)" +PID_FILE="$PROJECT_DIR/.dev.pid" +cd "$PROJECT_DIR" + +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +RED='\033[0;31m' +CYAN='\033[0;36m' +NC='\033[0m' + +if [ -f "$PID_FILE" ]; then + echo -e "${RED}Dev-Umgebung läuft bereits.${NC}" + echo -e "Stoppe zuerst mit: ${CYAN}./stop_dev.sh${NC}" + exit 1 +fi + +# ── Valet link ────────────────────────────────────────────── +echo -e "${YELLOW}▸ Valet-Link prüfen …${NC}" +if [ ! -L "$HOME/.config/valet/Sites/cts-work" ]; then + valet link cts-work 2>/dev/null + echo -e " ${GREEN}✓${NC} Valet-Link erstellt: cts-work.test" +else + echo -e " ${GREEN}✓${NC} Valet-Link vorhanden" +fi + +# ── Migrate ───────────────────────────────────────────────── +echo -e "${YELLOW}▸ Migrations ausführen …${NC}" +php artisan migrate --force --quiet +echo -e " ${GREEN}✓${NC} Datenbank aktuell" + +# ── Queue worker ──────────────────────────────────────────── +echo -e "${YELLOW}▸ Queue-Worker starten …${NC}" +php artisan queue:listen --tries=1 --timeout=0 > /dev/null 2>&1 & +QUEUE_PID=$! +echo -e " ${GREEN}✓${NC} Queue-Worker (PID $QUEUE_PID)" + +# ── Vite dev server ───────────────────────────────────────── +echo -e "${YELLOW}▸ Vite starten …${NC}" +npm run dev > /dev/null 2>&1 & +VITE_PID=$! +echo -e " ${GREEN}✓${NC} Vite (PID $VITE_PID)" + +# ── Save PIDs ─────────────────────────────────────────────── +echo "$QUEUE_PID $VITE_PID" > "$PID_FILE" + +echo "" +echo -e "${GREEN}═══════════════════════════════════════════════${NC}" +echo -e "${GREEN} Dev-Umgebung läuft!${NC}" +echo -e "${GREEN}═══════════════════════════════════════════════${NC}" +echo "" +echo -e " App: ${CYAN}http://cts-work.test${NC}" +echo -e " Vite: ${CYAN}http://localhost:5173${NC}" +echo "" +echo -e " Stop: ${YELLOW}./stop_dev.sh${NC}" +echo "" diff --git a/stop_dev.sh b/stop_dev.sh new file mode 100755 index 0000000..ac5d428 --- /dev/null +++ b/stop_dev.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +set -euo pipefail + +PROJECT_DIR="$(cd "$(dirname "$0")" && pwd)" +PID_FILE="$PROJECT_DIR/.dev.pid" +cd "$PROJECT_DIR" + +GREEN='\033[0;32m' +RED='\033[0;31m' +YELLOW='\033[1;33m' +NC='\033[0m' + +if [ ! -f "$PID_FILE" ]; then + echo -e "${RED}Dev-Umgebung läuft nicht.${NC}" + exit 1 +fi + +while read -r PID; do + if kill "$PID" 2>/dev/null; then + echo -e " ${YELLOW}▸${NC} Prozess $PID gestoppt" + fi +done < <(tr ' ' '\n' < "$PID_FILE") + +rm -f "$PID_FILE" + +echo "" +echo -e "${GREEN}Dev-Umgebung gestoppt.${NC}" +echo ""