job-ingesta-dolarapi¶
Ingesta diaria de cotizaciones del dólar para la base MINERVA.
Estado de migración¶
| Job | Catálogo | Estado |
|---|---|---|
dolarapi_minerva |
L21 | ✅ Migrado (origen: PY_RECIBE_DABRA_MINERVA_DOLARAPI_DIARIO). Sin cron activo en el inventario: horario por definir |
¿Qué hace?¶
Consulta la API pública DolarAPI (https://dolarapi.com/v1/dolares), normaliza las cotizaciones (casa, nombre, compra, venta, fecha) y las guarda en MINERVA.ods.usd_exchange_rates. Si se ejecuta dos veces el mismo día no duplica: reemplaza lo de esa casa y fecha. Deja una fila en MINERVA.ods.tbl_control_procesos (Success / Failed) y envía un correo (HTML si salió bien; texto si falló).
¿Qué hacer si falla?¶
- Alerta
EXIT_NONZEROen el panel y correo “USD Exchange Rate - Error”. - Causas habituales: DolarAPI caída (el job reintenta 3 veces) o MINERVA inaccesible. No hay pérdida de datos: la carga es todo-o-nada.
- Reejecutar es seguro. Detalle en
RUNBOOK.md.
Para desarrolladores¶
python3.11 -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
cp .env.example .env && chmod 600 .env # completar valores
pytest && ruff check .
python -m ingesta_dolarapi --dry-run # descarga y muestra; no escribe, audita ni avisa
python tools/verify_equivalence.py <ruta>/code/activo/PY_RECIBE_DABRA_MINERVA_DOLARAPI_DIARIO
Datos y logs no viven en este repo (ver estructura_carpeta_job.md, sección 4). Este job no genera archivos.
Fuente: repositorio job-ingesta-dolarapi, versión 2180fb5 (con cambios locales). Página generada con tools/publicar_docs.py.