El sábado pasado en el contexto de Agiles 2019 hice una sesión en formato mini-taller sobre este tema. Era la primera vez que hacía este taller pero más allá de eso creo que salió muy bien.
Integración Continua 2.0 es una idea que viene a reflejar algunos cambios en la forma de implementación de esta práctica que he visto a lo largo de los años. Yo empecé a utilizar esta práctica allá por 2005 / 2006 utilizando la herramienta CruiseControl. Desde aquella época al día de hoy varias cosas hay cambiado:
- Antiguamente la definición del proceso de integración continua se hacía «dentro del build server», en la actualidad la mayoría de las herramientas permiten (y promueven) la definición del proceso de integración continua dentro del propio repositorio donde se encuentra el código fuente a integrar. Esto es lo que hacen los archivos .travis-ci.yml, Jenkinsfile, etc.
- Antiguamente los servidores de integración continua corrían típicamente on-premises mientras que en la actualidad es muy común utilizarlos en la nube e incluso en algunos casos en un modelo «as a service»
- Antiguamente el build se armaba en base a plugins del build server, mientras que en la actualidad hay un clara tendencia a armar todo el proceso de build en scripts que luego son invocados por el build server
- Antiguamente los servidores de integración continua estaban enfocados en tareas concretas de integración continua, mientras que en la actualidad tienen un foco más amplio apuntando todo el proceso de delivery
Creo que estos puntos quedaron bien claros durante el taller, aún cuando en los ejercicios prácticos no fueron necesariamente en este sentido. De hecho los ejercicios tuvieron más foco en el proceso de delivery.
El taller tuvo una muy buena valoración por los participantes.
Aquí están disponibles los slides que utilicé durante el taller.
Agradezco a todos los participantes y espero que la sesión les haya resultado útil.

