07Jul

Automatiza tu vida

Si ya nos conoces o nos vas conociendo seguro que sabes que no nos dedicamos a la historia y por tanto no vamos hablar de la Oreja de Jenkins que dio pie a la guerra del Asiento entre España y Gran Bretaña en la mitad del siglo XVIII.

Os vamos a hablar de una aplicación, que es de código abierto, escrita en Java que ayuda a cientos de miles de programadores y administradores de sistemas en todo el mundo. Si no la conoces nosotros te la presentamos y te recomendamos encarecidamente que la uses sin dudarlo.

Comienzos

Su historia es muy curiosa. Jenkins fue creado por Kohsuke Kawaguchi y tenía el nombre de Hudson en sus inicios en Sun Microsystems; Sun fue adquirada por Oracle y uno de sus grandes activos era Hudson e intentó apropiarse de la marca registrada (es decir, quiso ponerla de pago). Pero la comunidad no se lo permitió y cambiaron el nombre a como lo conocemos en la actualidad: Jenkins. Y continua siendo gratis.

¿Porqué tantos programadores usan la plataforma Jenkins?

La clave está en dos palabras: Integración Continua. Consiste en ir probando los cambios en el código poco a poco para luego validarlos y agregarlos al proyecto. ¿A qué está bien? Pues eso no es lo mejor. Lo mejor es que lo hace de forma automatizada y si hay algún fallo te lo comunica de la manera en que tú hayas decidido antes.

Mano de robot
Robot ofreciendo ayuda

Seguro que tu cabeza le está dando vueltas a lo que te acabamos de comentar porque te abre muchas posibilidades en programación. Vamos a verlas.

Ejemplos de uso

Haces un cambio de código (A), Jenkis lo valida y se añade al proyecto. Haces otro cambio de código (B), Jenkins no lo valida. Tú ya sabes que el problema está en el código B porque el A fue validado e incorporado al proyecto general. ¡Ganas mucho tiempo!, porque vas directamente a donde está el problema.

Como ves no debes esperar hasta el final para hacer las comprobaciones sino que vas haciendo validaciones mientras escribes el código del proyecto. Por tanto, vas arreglando errores desde los primeros estadios. Y al hacer la validación, tú creas unas “reglas” y entre ellas le dices a Jenkins como te dice si hay algún error en alguna validación. Puedes recibir un correo electrónico con esa alerta de error, o puede recibir un mensaje a un chat de un grupo de la empresa para que todos estén sobre aviso. Y con esto no solo ganas tiempo sino que que se mejora la calidad del software que estés haciendo.

Automatiza tu vida

Pero no solo de código vive el hombre. Puedes automatizar tareas y no tener que preocuparte de hacer un calendario y encargarte tú. Te ponemos el ejemplo de que utilizas un software de terceros y creas una automatización con Jenkins para que cada X tiempo mire si hay alguna actualización de dicho software, o que te mire si tú página web está 100% operativa cada X minutos.

También puedes hacer que vaya haciendo copias de seguridad con las reglas que hayas indicado anteriormente. Por qué haces copias de seguridad con asiduidad, ¿no?

Progrmador enfrente de una estación de trabajo
Programador enfrente de una estación de trabajo

Nosotros en RQLogic tenemos muchos paquetes de tareas de sistemas personalizadas en Python y Ruby, pequeños scripts que controlan todas las partes de nuestros sistemas 24 horas al día.

¿Aún no estás del todo convencido?

Déjanos que te digamos algunas cosas más para que veas que Jenkins es de una utilidad incalculable. Es de código abierto y gratuito y gratuito. ¿Y qué decir de su comunidad?, pues es la verdadera joya de la corona porque no dejan de involucrarse y sacar plugins para conseguir aún más rendimiento. Si vas a la web de Jenkins, en la sección de plugins podrás ver que hay más de ¡1.000!. Y no solo se están creando nuevos sino que los que ya estaban siguen recibiendo actualizaciones. ¿Y ya te hemos dicho que es gratis?

Pues aún hay más. Puedes hacer que Jenkins ejecute tareas en función de la validación. Sigamos con el ejemplo de comprobar que una web está 100% operativa; si la validación es negativa tú le puedes decir que ejecute una tarea en especial para intentar que esa web pueda volver a funcionar a pleno rendimiento. Y sin ninguna intervención tuya más allá de haber creado esa “regla” dentro de Jenkins. Para que te vayas quedando con algunos conceptos técnicos: una Job son lo pasos que tú le mandas hacer (las reglas) y la Build es el resultado de aplicar esos Jobs para validar.

Lo confesamos sin rubor

Somos admiradores incondicionales de este software de Integración Continúa. Lo llevamos usando más de 10 años y tenemos cientos de tareas preparadas reduciendo nuestra carga de trabajo (y los tenemos en paquetes que usamos en los nuevos proyectos que vamos haciendo). Te prometemos que desde que aprendes a usarlo no lo vas a dejar nunca.

Palabra de RQLogic.

Leave a comment