Volver a la wiki

Re-indexar la Biblioteca manualmente

Re-indexar la Biblioteca manualmente

When to use (pre-condiciones)

Ejecutar este runbook cuando el cron /etc/cron.d/bib-reindex de Staging falle o no se haya ejecutado. Síntomas típicos:

Prerequisites

Steps

  1. Conectar a Staging y posicionarse en el repo:

    ssh root@<staging-host>
    cd /opt/crearack-pro
  2. Revisar el log para identificar apps fallidas:

    tail -50 /opt/bib-reindex/cron-bib-reindex.log

    Buscar [ERROR] y [STDERR] posteriores. MCP error 503 sugiere sobrecarga transitoria; reintento suele bastar.

  3. Cargar token en sesión:

    export BIB_MCP_TOKEN="$(tr -d '\r\n' < /opt/bib-reindex/.token)"

    Verificar: echo ${#BIB_MCP_TOKEN} debe dar >0.

  4. Actualizar código (si no hay cambios locales no commiteados):

    export GIT_SSH_COMMAND="ssh -i /root/.ssh/github_crearack -o StrictHostKeyChecking=no"
    git pull --rebase origin main

    Si hay cambios locales: git status para decidir.

  5. Re-indexar todas las apps:

    for app in core racks blueprints terminal network monitoring signage; do
      echo "=== $app ==="
      python3 scripts/bib_ast.py --push --apps "$app"
      echo "Exit: $?"
    done

    Si solo una falló: python3 scripts/bib_ast.py --push --apps blueprints.

  6. Lanzar compute_communities si todas las apps terminaron con exit 0:

    curl -sS -X POST \
      -H "Authorization: Bearer $BIB_MCP_TOKEN" \
      -H "Content-Type: application/json" \
      --max-time 60 \
      -d '{"jsonrpc":"2.0","method":"tools/call","params":{"name":"bib_compute_communities","arguments":{"max_iterations":50,"min_community_size":3}},"id":1}' \
      https://workspace.crearack.com/api/mcp

    Respuesta HTTP 200 = éxito.

Verification

Rollback (N/A — reindex es idempotente)

Re-indexación completamente idempotente: bib_ast.py --push --apps <app> usa replace_app para apps individuales, eliminando nodos obsoletos y reinsertando grafo completo de esa app. Sin riesgo de corrupción por ejecuciones repetidas.

Known issues

Véase también

Subir