71 lines
2.4 KiB
Bash
Executable file
71 lines
2.4 KiB
Bash
Executable file
#!/bin/bash
|
|
# Script de démarrage du frontend Veza en environnement lab avec vraie BDD
|
|
# Usage: ./scripts/start_lab.sh
|
|
|
|
set -e
|
|
|
|
# Couleurs
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
SCRIPT_DIR=$(dirname "$0")
|
|
|
|
echo -e "${GREEN}🚀 Démarrage du frontend Veza en mode Lab${NC}"
|
|
|
|
# Vérifier que nous sommes dans apps/web
|
|
if [ ! -f "package.json" ]; then
|
|
echo -e "${RED}❌ Erreur: Ce script doit être exécuté depuis le répertoire apps/web${NC}"
|
|
exit 1
|
|
fi
|
|
|
|
# 1. Chargement de .env.lab si présent
|
|
if [ -f .env.lab ]; then
|
|
echo -e "${YELLOW}📄 Chargement de la configuration depuis .env.lab...${NC}"
|
|
export $(grep -v '^#' .env.lab | xargs)
|
|
fi
|
|
|
|
# 2. Valeurs par défaut (si non définies dans .env.lab)
|
|
export VITE_API_BASE_URL="${VITE_API_BASE_URL:-http://localhost:8080/api/v1}"
|
|
export VITE_WS_BASE_URL="${VITE_WS_BASE_URL:-ws://localhost:8081}"
|
|
export VITE_STREAM_URL="${VITE_STREAM_URL:-http://localhost:8082}"
|
|
export VITE_USE_MSW="${VITE_USE_MSW:-0}"
|
|
export VITE_APP_NAME="${VITE_APP_NAME:-Veza Lab}"
|
|
|
|
echo -e "${GREEN}📋 Configuration active :${NC}"
|
|
echo -e " API URL : $VITE_API_BASE_URL"
|
|
echo -e " WS URL : $VITE_WS_BASE_URL"
|
|
echo -e " Stream URL: $VITE_STREAM_URL"
|
|
echo -e " Mode MSW : $VITE_USE_MSW"
|
|
echo ""
|
|
|
|
# 3. Vérification des backends
|
|
echo -e "${YELLOW}🔍 Lancement du diagnostic backend...${NC}"
|
|
# On appelle le script frère check_backend.sh
|
|
if [ -f "$SCRIPT_DIR/check_backend.sh" ]; then
|
|
bash "$SCRIPT_DIR/check_backend.sh" || {
|
|
echo -e "${RED}❌ Échec de la vérification des backends.${NC}"
|
|
echo -e "${YELLOW} Le frontend risque de ne pas fonctionner correctement.${NC}"
|
|
# On ne bloque pas forcément le start (ou on demande confirmation),
|
|
# mais ici le check_backend.sh exit 1 si critique.
|
|
# Si on veut forcer l'arrêt : exit 1
|
|
# L'énoncé dit : "check_backend.sh avant de lancer Vite"
|
|
exit 1
|
|
}
|
|
else
|
|
echo -e "${YELLOW}⚠️ Script check_backend.sh introuvable, pas de vérification préalable.${NC}"
|
|
fi
|
|
|
|
# 4. Démarrage
|
|
echo ""
|
|
echo -e "${GREEN}🌐 Démarrage de Vite...${NC}"
|
|
if [ ! -d "node_modules" ]; then
|
|
npm install
|
|
fi
|
|
|
|
# On passe les vars explicitement au cas où vite ne les chope pas par l'export shell (normalement si)
|
|
# Mais Vite lit aussi les .env donc attention aux conflits.
|
|
# L'export shell a priorité sur .env files pour process.env, mais Vite config client...
|
|
# Vite remplace import.meta.env par les valeurs.
|
|
npm run dev
|