Automatización y CI/CD

Jenkins no era el problema

En una empresa de desarrollo gestionábamos despliegues con Jenkins para más de 100 clientes. El problema no fue montar Jenkins. Eso fue lo fácil. El problema empezó cuando cada cliente comenzó a tener pequeñas diferencias.

Aparecieron Jenkinsfiles duplicados con variaciones mínimas, lógica repetida, parámetros por cliente metidos directamente en pipelines y una mezcla de jobs freestyle antiguos con pipelines declarativos.

Todo empezó a degradarse: cambios comunes que no aplicaban a todos, uso inconsistente de credenciales, jobs que dependían de agentes concretos y pérdida de trazabilidad sobre qué versión estaba desplegada en cada cliente.

La salida no fue cambiar Jenkins. Fue cambiar el enfoque: mover lógica común a Shared Libraries, eliminar freestyle jobs, unificar en pipeline declarativo, parametrizar cliente y entorno, centralizar configuración y eliminar dependencias locales de agentes.

Cuando un pipeline solo funciona porque un nodo tiene una ruta o herramienta concreta, no tienes automatización. Tienes suerte.

A partir de ahí Jenkins dejó de ser una colección de scripts que más o menos funcionaban y pasó a ser una plataforma mantenible.

Volver a entradas