reindex-lgcc/README.md

55 lines
1.8 KiB
Markdown

# Reindex Carpa → Typesense
Scripts para reindexar colecciones desde Directus a Typesense (upsert).
## Requisitos
- Node.js 18+
- `.env` configurado (ver `.env.example`)
## Scripts
| Comando | Directus | Typesense |
|---------|----------|-----------|
| `node reindex.mjs --collection activities` | `activities_translations` | `activities` + `activities_paragraphs` |
| `node reindex.mjs --collection conferences` | `conferences_translations` | `conferences` + `conferences_paragraphs` |
| `node reindex-entrelineas.mjs` | `entrelineas_translations` | `entrelineas` |
| `node reindex-print-materials.mjs` | `print_materials` | `print-materials` |
## Uso
```bash
# Validar transformación sin escribir en Typesense
node reindex-entrelineas.mjs --dry-run --limit 5
node reindex-print-materials.mjs --dry-run --limit 5
# Index completo
node reindex-entrelineas.mjs
node reindex-print-materials.mjs
# Con límite y offset para lotes parciales
node reindex-entrelineas.mjs --limit 100 --offset 200
```
## Opciones comunes
| Flag | Descripción |
|------|-------------|
| `--limit N` | Procesar solo N registros |
| `--offset N` | Saltar los primeros N registros |
| `--dry-run` | Solo lectura + transformación, no importa a Typesense |
## Variables de entorno
Ver `.env.example`. Cada script soporta vars específicas con fallback a las genéricas:
| Script | Vars específicas | Fallback |
|--------|-----------------|----------|
| `reindex-entrelineas.mjs` | `ENTRELINEAS_DIRECTUS_*`, `ENTRELINEAS_TYPESENSE_*` | `DIRECTUS_*`, `TYPESENSE_*` |
| `reindex-print-materials.mjs` | `PRINT_DIRECTUS_*`, `PRINT_TYPESENSE_*` | `DIRECTUS_*`, `TYPESENSE_*` |
## Notas
- Todos los imports usan `?action=upsert` — no elimina documentos existentes.
- Si el Directus de entrelineas/print-materials es distinto al de activities, definir las vars específicas en `.env`.