2025-03-07 00:45:33 -06:00

56 lines
2.2 KiB
Bash
Executable File

#!/bin/bash
# Definir colores ANSI
YELLOW='\033[1;33m' # Amarillo brillante
BLUE='\033[44m' # Fondo azul con texto blanco
WHITE='\033[1;37m' # Texto blanco brillante
GREEN='\033[1;32m' # Verde brillante
RED='\033[1;31m' # Rojo brillante
RESET='\033[0m' # Reset de color
# Generar APP_KEY solo si no está definida
echo -e "🔑 Verificando clave de aplicación..."
if ! grep -q "^APP_KEY=" .env || grep -q "^APP_KEY=$" .env; then
echo -e " ➡️ Generando nueva APP_KEY..."
php artisan key:generate --ansi
else
echo -e " ✅ APP_KEY ya está definida, no se regenerará.\n"
fi
# Crear enlace simbólico para almacenamiento
echo -e "🔗 Creando enlace de almacenamiento..."
php artisan storage:link
# Publicar configuraciones y seeders
echo -e "🛠️ Publicando configuraciones..."
php artisan vendor:publish --tag=vuexy-admin-config --ansi
php artisan vendor:publish --tag=vuexy-admin-images --ansi
php artisan vendor:publish --tag=vuexy-admin-seeders --ansi
php artisan vendor:publish --tag=sat-catalogs-seeders --ansi
echo -e "✅ Configuraciones publicadas con éxito.\n"
# Verificar si la base de datos está configurada en .env
DB_READY=false
if grep -q "^DB_HOST=" .env && grep -q "^DB_DATABASE=" .env && grep -q "^DB_USERNAME=" .env && grep -q "^DB_PASSWORD=" .env; then
echo -e "\n🔍 Verificando conexión a la base de datos..."
# Intentar obtener el estado de las migraciones
if php artisan migrate:status --no-interaction > /dev/null 2>&1; then
echo -e " ${GREEN}✅ Conexión a la base de datos exitosa.${RESET}\n"
DB_READY=true
else
echo -e " ${RED}❌ No se pudo conectar a la base de datos.${RESET}\n"
fi
else
echo -e " ${RED}⚠️ La configuración de la base de datos en .env está incompleta.${RESET}\n"
fi
# Mensaje final con colores
if [ "$DB_READY" = false ]; then
echo -e "${YELLOW}⚠️ IMPORTANTE:${RESET} Debes configurar la base de datos en .env antes de continuar."
echo -e " Para inicializar la base de datos, ejecuta:\n"
echo -e " ${WHITE} php -d memory_limit=1G artisan migrate:fresh --seed ${RESET}\n"
else
echo -e "${GREEN}🎉 La base de datos ya está configurada correctamente.${RESET}\n"
fi