fix: mejorar detección de errores en install.sh (espacio, permisos, HTTP code)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
34b9c81262
commit
2ff4d314de
+22
-5
@@ -74,17 +74,34 @@ info "Directorio: ${INSTALL_DIR}"
|
||||
info "Intervalo: ${INTERVAL}s"
|
||||
|
||||
# ── Instalar binario ──────────────────────────────────────────────────────────
|
||||
mkdir -p "$INSTALL_DIR"
|
||||
mkdir -p "$INSTALL_DIR" || error "No se pudo crear directorio ${INSTALL_DIR} (¿permisos?)"
|
||||
|
||||
# Verificar espacio disponible (necesita al menos 20 MB)
|
||||
AVAIL_KB=$(df -k "$INSTALL_DIR" 2>/dev/null | awk 'NR==2 {print $4}')
|
||||
if [[ -n "$AVAIL_KB" && "$AVAIL_KB" -lt 20480 ]]; then
|
||||
error "Espacio insuficiente en ${INSTALL_DIR}: solo ${AVAIL_KB} KB disponibles (se necesitan ≥20 MB)"
|
||||
fi
|
||||
|
||||
info "Descargando agente desde ${DOWNLOAD_URL}..."
|
||||
DEST="${INSTALL_DIR}/usite-agent"
|
||||
if command -v curl &>/dev/null; then
|
||||
curl -fsSL "$DOWNLOAD_URL" -o "${INSTALL_DIR}/usite-agent" || error "No se pudo descargar"
|
||||
HTTP_CODE=$(curl -fsSL --write-out "%{http_code}" "$DOWNLOAD_URL" -o "$DEST" 2>/tmp/curl_err) || {
|
||||
CURL_ERR=$(cat /tmp/curl_err 2>/dev/null)
|
||||
error "No se pudo descargar (HTTP ${HTTP_CODE:-?}). ${CURL_ERR}\nVerifica: df -h ${INSTALL_DIR}"
|
||||
}
|
||||
elif command -v wget &>/dev/null; then
|
||||
wget -q "$DOWNLOAD_URL" -O "${INSTALL_DIR}/usite-agent" || error "No se pudo descargar"
|
||||
wget -q "$DOWNLOAD_URL" -O "$DEST" || error "No se pudo descargar con wget"
|
||||
else
|
||||
error "Se requiere curl o wget"
|
||||
fi
|
||||
chmod +x "${INSTALL_DIR}/usite-agent"
|
||||
ok "Binario descargado"
|
||||
|
||||
# Verificar que el binario es un ejecutable válido
|
||||
if [[ ! -s "$DEST" ]]; then
|
||||
error "El archivo descargado está vacío: ${DEST}"
|
||||
fi
|
||||
|
||||
chmod +x "$DEST"
|
||||
ok "Binario descargado ($(du -sh "$DEST" | cut -f1))"
|
||||
|
||||
# ── Configuración ─────────────────────────────────────────────────────────────
|
||||
cat > "${INSTALL_DIR}/agent.yml" <<EOF
|
||||
|
||||
Reference in New Issue
Block a user