#!/bin/bash # Script pour réinitialiser la base de données lab (SCHEMA CHAT UNIQUEMENT) # ATTENTION: Supprime toutes les données du chat ! set -euo pipefail RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' if [ -z "${VEZA_LAB_DSN:-}" ]; then echo -e "${RED}❌ VEZA_LAB_DSN n'est pas défini${NC}" exit 1 fi echo -e "${YELLOW}⚠️ ATTENTION: Cette opération va supprimer toutes les données du schema 'chat' dans veza_lab${NC}" echo -e "${YELLOW}⚠️ Les données du backend (schema public) ne seront par touchées.${NC}" read -p "Continuer ? (yes/no): " confirm if [ "$confirm" != "yes" ]; then echo "Annulé" exit 0 fi # Construire l'URL avec le search_path pour sqlx if [[ "$VEZA_LAB_DSN" == *"?"* ]]; then export DATABASE_URL="${VEZA_LAB_DSN}&options=-c%20search_path=chat" else export DATABASE_URL="${VEZA_LAB_DSN}?options=-c%20search_path=chat" fi echo -e "${BLUE}🗑️ Reset du schema 'chat'...${NC}" psql "$VEZA_LAB_DSN" -c "DROP SCHEMA IF EXISTS chat CASCADE; CREATE SCHEMA chat;" 2>&1 echo -e "${BLUE}📦 Application des migrations...${NC}" # On force search_path=chat via l'URL sqlx migrate run --database-url "$DATABASE_URL" echo -e "${GREEN}✅ Base de données chat réinitialisée${NC}"