Saltar a contenido

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)
Con rango o ventanas se usa el perfil reproceso (otro id de auditoria y otro asunto de correo, como 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.