Initial commit: proyecto ContabilidadSaPolar completo
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
# Script para cargar datos seed después de que Flyway haya migrado la BBDD
|
||||
# Uso: docker compose exec backend /docker-entrypoint-initdb.d/load-seed.sh
|
||||
# O directamente: ./db/load-seed.sh
|
||||
|
||||
set -e
|
||||
|
||||
echo "==> Esperando a que MySQL esté disponible..."
|
||||
for i in {1..30}; do
|
||||
if mysql -uroot -p"$DB_PASSWORD" -h mysql -e "SELECT 1" >/dev/null 2>&1; then
|
||||
echo "==> MySQL disponible!"
|
||||
break
|
||||
fi
|
||||
sleep 2
|
||||
done
|
||||
|
||||
echo "==> Verificando si ya hay datos..."
|
||||
USER_COUNT=$(mysql -uroot -p"$DB_PASSWORD" -h mysql "$DB_NAME" -sN -e "SELECT COUNT(*) FROM users WHERE username != 'admin';" 2>/dev/null || echo "0")
|
||||
|
||||
if [ "$USER_COUNT" -gt 0 ]; then
|
||||
echo "==> La BBDD ya tiene datos ($USER_COUNT usuarios extra). Saltando seed."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "==> Cargando seed.sql..."
|
||||
mysql -uroot -p"$DB_PASSWORD" -h mysql "$DB_NAME" --default-character-set=utf8mb4 < /tmp/seed.sql 2>/dev/null || \
|
||||
mysql -uroot -p"$DB_PASSWORD" -h mysql "$DB_NAME" < /docker-entrypoint-initdb.d/seed.sql
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "==> Seed cargado correctamente!"
|
||||
else
|
||||
echo "==> Error al cargar seed. Intentando desde ubicación alternativa..."
|
||||
# Intentar copiar seed a la ubicación del contenedor
|
||||
docker compose cp backend/src/main/resources/db/seed.sql backend:/tmp/seed.sql
|
||||
docker compose exec backend bash -c "mysql -uroot -p\$DB_PASSWORD -h mysql \$DB_NAME --default-character-set=utf8mb4 < /tmp/seed.sql"
|
||||
fi
|
||||
|
||||
echo "==> Seed completado!"
|
||||
Reference in New Issue
Block a user