Integración contínua Jenkins Guatemala 2014 César Hernández CesarHernandezGt @CesarHgt CesarHernandezGt
Jun 27, 2015
Integración contínua Jenkins
Guatemala 2014
César HernándezCesarHernandezGt@CesarHgt
CesarHernandezGt
El problema...un ejemplo
Parte básica del ciclo de vida del software
NewFeatureBug Fix
Codificación Integración Configuración
Despliegue Pruebas Unitarias
Pruebas Integración
Pruebas Regresión
Pruebas Funcionales
Pruebas de carga
Nuevo Release
Cuando algo sale mal
NewFeatureBug Fix
Codificación Integración Configuración
Despliegue Pruebas Unitarias
Pruebas Integración
Pruebas Regresión
Pruebas Funcionales
Pruebas de carga
Nuevo Release
Problemas
● Falta de automatización● Poca visibilidad● Versinoamiento nulo o escazo● Comunicación reactiva● No hay agilidad en el ciclo● Alto tiempo de release
Problemas
Resolviendo el problema parcialmente
NewFeatureBug Fix
Codificación Integración Configuración
Despliegue Pruebas Unitarias
Pruebas Integración
Pruebas Regresión
Pruebas Funcionales
Pruebas de carga
Nuevo Release
Resolviendo el problema parcialmente
NewFeatureBug Fix
Codificación Integración Configuración
Despliegue Pruebas Unitarias
Pruebas Integración
Pruebas Regresión
Pruebas Funcionales
Pruebas de carga
Nuevo Release
Jenkins
● Herramienta que monitorea la ejecución repetitiva de Tareas (Jobs)
● Actualmente utilizado en:○ Construir y probar software de manera contínua○ Monitorear la ejecución de Jobs externos
● Altamente extendible por medio de pluggins● Defacto en la industria como servidor de
Integración Contínua
Ventajas
● Prevención y reducción de errores al lanzar a producción (Reducción del riesgo).
● Generación de análisis y presentación de informes sobre el estado del código.
● Aseguramiento de la Calidad● Permite una mayor visibilidad del proyecto.
Mejores prácticas
● https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+Best+Practices