Initial
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
BACKEND_DIR="${ROOT_DIR}/backend"
|
||||
FRONTEND_DIR="${ROOT_DIR}/frontend"
|
||||
|
||||
BACKEND_PORT="${BACKEND_PORT:-5001}"
|
||||
FRONTEND_PORT="${FRONTEND_PORT:-5200}"
|
||||
BACKEND_HOST="${BACKEND_HOST:-127.0.0.1}"
|
||||
BACKEND_URL="http://${BACKEND_HOST}:${BACKEND_PORT}"
|
||||
|
||||
read -r -p "Backend: npm install ausfuehren? (y/N) " backend_install_choice
|
||||
if [[ "$backend_install_choice" =~ ^([YyJj]|[Yy]es|[Jj]a)$ ]]; then
|
||||
BACKEND_NPM_INSTALL="1"
|
||||
else
|
||||
BACKEND_NPM_INSTALL="0"
|
||||
fi
|
||||
|
||||
read -r -p "Frontend: npm install ausfuehren? (y/N) " frontend_install_choice
|
||||
if [[ "$frontend_install_choice" =~ ^([YyJj]|[Yy]es|[Jj]a)$ ]]; then
|
||||
FRONTEND_NPM_INSTALL="1"
|
||||
else
|
||||
FRONTEND_NPM_INSTALL="0"
|
||||
fi
|
||||
|
||||
cleanup() {
|
||||
echo ""
|
||||
echo "Stopping processes..."
|
||||
if [[ -n "${BACKEND_PID:-}" ]]; then
|
||||
kill -TERM "$BACKEND_PID" 2>/dev/null || true
|
||||
wait "$BACKEND_PID" 2>/dev/null || true
|
||||
fi
|
||||
if [[ -n "${FRONTEND_PID:-}" ]]; then
|
||||
kill -TERM "$FRONTEND_PID" 2>/dev/null || true
|
||||
wait "$FRONTEND_PID" 2>/dev/null || true
|
||||
fi
|
||||
}
|
||||
trap cleanup INT TERM EXIT
|
||||
|
||||
echo "Starting backend on port ${BACKEND_PORT}..."
|
||||
(
|
||||
cd "$BACKEND_DIR"
|
||||
if [[ "$BACKEND_NPM_INSTALL" == "1" ]]; then
|
||||
npm install
|
||||
else
|
||||
echo "Backend npm install uebersprungen."
|
||||
fi
|
||||
PORT="$BACKEND_PORT" npm run dev
|
||||
) &
|
||||
|
||||
BACKEND_PID=$!
|
||||
|
||||
echo "Starting frontend on port ${FRONTEND_PORT}..."
|
||||
(
|
||||
cd "$FRONTEND_DIR"
|
||||
if [[ "$FRONTEND_NPM_INSTALL" == "1" ]]; then
|
||||
npm install
|
||||
else
|
||||
echo "Frontend npm install uebersprungen."
|
||||
fi
|
||||
VITE_BACKEND_URL="$BACKEND_URL" npm run dev -- --port "$FRONTEND_PORT" --strictPort
|
||||
) &
|
||||
|
||||
FRONTEND_PID=$!
|
||||
|
||||
echo ""
|
||||
echo "Backend PID: $BACKEND_PID"
|
||||
echo "Frontend PID: $FRONTEND_PID"
|
||||
echo "Press Ctrl+C to stop everything"
|
||||
echo ""
|
||||
|
||||
wait "$BACKEND_PID" "$FRONTEND_PID"
|
||||
Reference in New Issue
Block a user