RUNBOOK — job-envio-adidas¶
proveedores_adidas (L15)¶
| Dato | Valor |
|---|---|
| Programacion | 40 16 * * * |
| Duracion esperada | 1–2 min por dia (log del original; medir) |
| Timeout | 20 min (propuesto) |
| Comando | .venv/bin/python -m envio_adidas |
| Efecto | Rellena ods.tmp_envios_dass (via SP), sube backup a SharePoint, envia SLAM_SI_*.csv por SFTP, correo, fila en tbl_control_procesos |
| Logs | /var/log/dabra/proveedores_adidas/<fecha_hora>.log |
| Auditoria | ATHENAS.ods.tbl_control_procesos: ID08 - PY_ENVIA_EXTERNO_TXT_ADIDAS_DIARIA_LNXV1 (diario) o ..._REPROCESO_Main (reproceso). Estados: Success / Error |
| Datos | /var/lib/dabra/proveedores_adidas/{tmp,output,quarantine} |
| Codigo | Significado | Accion |
|---|---|---|
| 0 | Todo enviado | — |
| 1 | Fallo SP, backup, SFTP o auditoria | Ver log y correo "ERROR"; revisar quarantine/; reejecutar |
| 2 | Configuracion o argumentos invalidos | Revisar .env / comando |
Comandos¶
python -m envio_adidas --dry-run # SP + archivos en output/, sin enviar ni auditar
python -m envio_adidas # diario: ayer
python -m envio_adidas --desde 2026-10-01 --hasta 2026-10-05 # reproceso de un rango
python -m envio_adidas -v 2026-07-26:2026-07-31 -v 2026-08-01:2026-08-08 # varias ventanas
python -m envio_adidas --marca ADIDAS # marca del SP (por defecto ADIDAS)
Main_adidas_reproceso.py). Las fechas aceptan AAAA-MM-DD o DD/MM/AAAA.
Reproceso¶
Seguro: cada dia vuelve a ejecutar el SP y reenvia SLAM_SI_<semana>.csv con el mismo nombre. Cada ejecucion real audita y manda un correo por dia.
No ejecutar a la vez que DASS (L16–L18, 17:00–17:20) ni dos reprocesos en paralelo: comparten ods.tmp_envios_dass y se pisarian los datos.
Rollback¶
No hay. Un archivo mal enviado se corrige reprocesando ese dia.
Problemas conocidos¶
- Si SharePoint falla, no se envia nada a Adidas (el backup va primero, como en el original). Reintentar cuando SharePoint responda.
- Si el SP devuelve 0 filas se sube un backup vacio, no se envia nada y se manda la confirmacion (igual que el original). Aparece un WARNING en el log.
- Un fallo de SFTP no corta los demas archivos del dia; el dia queda en
quarantine/y el job sale con 1.
Fuente: repositorio job-envio-adidas, versión f600abc. Página generada con tools/publicar_docs.py.