feat(ADM-018): completed feature
This commit is contained in:
58
project/scripts/start-dev.sh
Executable file
58
project/scripts/start-dev.sh
Executable file
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env bash
|
||||
# start-dev.sh — levanta infraestructura + migraciones + servidor dev
|
||||
# Uso: ./scripts/start-dev.sh
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
|
||||
cd "$PROJECT_DIR"
|
||||
|
||||
# ── 1. Verificar Docker ─────────────────────────────────────────────────────
|
||||
if ! command -v docker &>/dev/null; then
|
||||
echo "Docker no encontrado. Instalo o aseguro de que este en PATH."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# ── 2. Levantar postgres y redis ────────────────────────────────────────────
|
||||
echo "Levantando postgres y redis..."
|
||||
docker compose up -d postgres redis
|
||||
|
||||
# ── 3. Esperar a que postgres responda ──────────────────────────────────────
|
||||
echo "Esperando a postgres..."
|
||||
MAX_WAIT=30
|
||||
COUNT=0
|
||||
until docker compose exec -T postgres pg_isready -U mdv &>/dev/null; do
|
||||
sleep 1
|
||||
COUNT=$((COUNT + 1))
|
||||
if [ "$COUNT" -ge "$MAX_WAIT" ]; then
|
||||
echo "postgres no respondio en ${MAX_WAIT}s"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
echo "postgres listo"
|
||||
|
||||
# ── 4. Instalar dependencias ─────────────────────────────────────────────────
|
||||
echo "npm install..."
|
||||
npm install
|
||||
|
||||
# ── 5. Asegurar .env con DATABASE_URL ───────────────────────────────────────
|
||||
if [ ! -f .env ]; then
|
||||
echo "Creando .env con DATABASE_URL..."
|
||||
cat > .env <<'EOF'
|
||||
DATABASE_URL=postgres://mdv:mdv_dev_only@localhost:5432/mercadodevida
|
||||
NODE_ENV=development
|
||||
EOF
|
||||
fi
|
||||
|
||||
# ── 6. Exportar variables para que los procesos hijos las tengan ───────────────
|
||||
export DATABASE_URL="postgres://mdv:mdv_dev_only@localhost:5432/mercadodevida"
|
||||
export NODE_ENV="development"
|
||||
|
||||
# ── 7. Aplicar migraciones ──────────────────────────────────────────────────
|
||||
echo "Aplicando migraciones..."
|
||||
npx node-pg-migrate up
|
||||
|
||||
# ── 8. Arrancar servidor dev ─────────────────────────────────────────────────
|
||||
echo "Todo listo. Arrancando servidor dev..."
|
||||
npm run start
|
||||
Reference in New Issue
Block a user