2025-02-14 12:34:16 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
# Cargar módulos
|
|
|
|
source "$(dirname "$0")/cleanup.sh"
|
|
|
|
source "$(dirname "$0")/setup.sh"
|
|
|
|
source "$(dirname "$0")/run_group.sh"
|
|
|
|
source "$(dirname "$0")/summary.sh"
|
2025-02-20 08:17:54 +00:00
|
|
|
source "$(dirname "$0")/wait_for_api_ready.sh"
|
2025-02-14 12:34:16 +00:00
|
|
|
|
|
|
|
# Manejo de señales para limpiar si se interrumpe el script
|
|
|
|
trap cleanup SIGINT
|
2025-02-20 08:17:54 +00:00
|
|
|
|
|
|
|
# Docker setup
|
2025-02-18 13:20:31 +00:00
|
|
|
echo "💿 Construyendo CypressSetup"
|
2025-02-14 14:06:47 +00:00
|
|
|
docker build -t cypress-setup:latest -f ./test/cypress/Dockerfile . >/dev/null 2>&1
|
2025-02-20 08:17:54 +00:00
|
|
|
echo "💿 Descargando imágenes actualizadas"
|
2025-02-18 13:20:31 +00:00
|
|
|
docker-compose -f docker-compose.e2e.yml pull back front vn-database
|
2025-02-20 08:17:54 +00:00
|
|
|
echo "💿 Levantando los contenedores"
|
|
|
|
docker-compose -p lilium-e2e -f docker-compose.e2e.yml up -d >/dev/null 2>&1
|
|
|
|
|
|
|
|
wait_for_api_ready "Aplicación" "front" 9000 "/api/Applications/status" "lilium-e2e_default"
|
|
|
|
echo "📀 Lanzando E2E"
|
|
|
|
|
|
|
|
# Lista global de PIDs
|
|
|
|
declare -A running
|
|
|
|
|
|
|
|
# Índice de ejecución de carpetas
|
|
|
|
INDEX_FILE="/tmp/index_file"
|
|
|
|
index=$((numParallelGroups - 1))
|
|
|
|
echo $index > "$INDEX_FILE"
|
|
|
|
|
|
|
|
# 🔹 Lanzar los primeros `numParallelGroups` procesos
|
|
|
|
for ((i = 0; i < numParallelGroups && i < ${#folders[@]}; i++)); do
|
|
|
|
run_group "${folders[$i]}" $i &
|
|
|
|
done
|
|
|
|
|
|
|
|
# 🔹 Esperar a que todos los procesos terminen
|
|
|
|
while [[ $((index + 2)) -lt ${#folders[@]} ]] || [[ $(docker ps --filter "ancestor=cypress-setup" --format "{{.ID}}" | wc -l) -gt 0 ]]; do
|
|
|
|
# Actualizar index desde el archivo compartido
|
|
|
|
next_index=$(cat "$INDEX_FILE")
|
|
|
|
index=$next_index
|
|
|
|
sleep 1 # Pausa antes de volver a comprobar
|
2025-02-14 12:34:16 +00:00
|
|
|
done
|
|
|
|
|
2025-02-20 08:17:54 +00:00
|
|
|
docker-compose -p lilium-e2e -f docker-compose.e2e.yml down
|
2025-02-14 12:34:16 +00:00
|
|
|
|
|
|
|
# Generar el resumen final
|
|
|
|
generate_summary
|
|
|
|
|
|
|
|
# Limpiar contenedores al finalizar
|
|
|
|
cleanup
|