#!/usr/bin/env bash # ============================================================ # reset-and-seed-db.sh : Réinitialise la BDD et injecte les données de test # Usage : depuis la racine du projet ptitspas-app # ./scripts/reset-and-seed-db.sh # ============================================================ set -e SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" cd "$PROJECT_ROOT" echo "=== Réinitialisation BDD + seed données de test ===" echo "Projet : $PROJECT_ROOT" echo "" # 1) Arrêter les conteneurs et supprimer le volume Postgres echo "[1/4] Arrêt des conteneurs et suppression du volume Postgres..." docker compose down -v 2>/dev/null || docker-compose down -v 2>/dev/null || true # 2) Démarrer uniquement la base echo "[2/4] Démarrage du conteneur database..." docker compose up -d database 2>/dev/null || docker-compose up -d database 2>/dev/null # 3) Attendre que Postgres soit prêt echo "[3/4] Attente du démarrage de Postgres..." for i in {1..30}; do if docker exec ptitspas-postgres pg_isready -U admin -d ptitpas_db 2>/dev/null; then echo " Postgres prêt." break fi if [ "$i" -eq 30 ]; then echo "Erreur : Postgres ne répond pas après 30 tentatives." exit 1 fi sleep 1 done # Petit délai supplémentaire pour la fin de l'init (BDD.sql) sleep 2 # 4) Exécuter le seed des données de test echo "[4/4] Exécution du seed (03_seed_test_data.sql)..." docker exec -i ptitspas-postgres psql -U admin -d ptitpas_db < database/seed/03_seed_test_data.sql echo "" echo "=== Terminé ===" echo "Comptes de test (mot de passe : password) :" echo " - admin@ptits-pas.fr (super_admin, créé par BDD.sql)" echo " - sophie.bernard@ptits-pas.fr (administrateur)" echo " - lucas.moreau@ptits-pas.fr (gestionnaire)" echo " - marie.dubois@ptits-pas.fr (assistante maternelle)" echo " - fatima.elmansouri@ptits-pas.fr (assistante maternelle)" echo " - claire.martin@ptits-pas.fr (parent)" echo " - thomas.martin@ptits-pas.fr (parent)" echo " - amelie.durand@ptits-pas.fr (parent)" echo " - julien.rousseau@ptits-pas.fr (parent)" echo " - david.lecomte@ptits-pas.fr (parent)" echo "" echo "Tu peux redémarrer le backend/frontend si besoin : docker compose up -d"