Práctica 4 14-15
Jenkins es un software libre de integración continua:
Esta herramienta te permite automatizar la construcción y la validación del repositorio del software en desarrollo de manera continuada. Esto permite la detección de problemas en el software de manera temprana. Jenkins es un robot configurable que ofrece una interfaz web y que ejecuta tareas programadas con cierta periodicidad.
Jenkins permite comprobar que la construcción del proyecto, la que permite generar formatos distribuibles tales como .war, .egg, etc. se generan correctamente. Además, si el proyecto incluye pruebas de regresión se puede validar también si los últimos cambios (commits) generan algún problema a nivel funcional.
Contenido
Instalación
La instalación de jenkins para Ubuntu Linux viene descrita en su web.
Básicamente, la magia que hay que hacer desde el terminal es la siguiente:
wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins
sudo apt-get update
sudo apt-get install jenkins
Una vez hecho, lanza un servidor web en el puerto 8080, accesible desde la URI http://localhost:8080.
Usando Jenkins
Jenkins ofrece un panel de control que muestra las tareas programadas. Para representar su estado emplea un código basado en el tiempo atmósferico:
- Soleado: La tarea no ha sufrido problemas en los último intentos de ejecución.
- Nublado: Hay uno o varios fallos al lanzar la tarea.
- Tormenta: La tarea reincide en el error.
- Sol con nubes: La tarea vuelve a tener éxito pero en el pasado cercano sucedieron problemas.
El plugin para git
Desde Administrar Jenkins se puede acceder a la zona Administrar Plugins que permite instalar el plugin GIT plugin pues Jenkins no viene con él por defecto. Señala la pestaña plugins disponibles, en el buscador filtra por la palabra git y haz doble clic sobre el plugin que quieres instalar. No olvides marcar la casilla que solicita reiniciar Jenkins para que el plugin esté disponible.
Nuevas tareas
Cada tarea tiene un nombre que la identifica de manera única. Si pinchas en Nueva Tarea y seleccionas Crear un proyecto de estilo libre te permitirá configurar el repositorio de git (Ver subsección SCM) y las ejecuciones asociadas a la tarea. Una vez añadida la tarea, puedes monitorizarla o incluso forzar su lanzamiento desde el panel de control.
En cuanto a las ejecuciones, si selecciona Ejecutar línea de comandos (shell) puede invocar la orden que permite la construcción (build) del proyecto, la orden que ejecuta las pruebas de regresión o cualquier otra cosa que veas conveniente. Cualquiera que sea la tarea, Jenkins se encargará de validar que se ejecuta con éxito.
En caso de problemas
En general, si Jenkins reporta problema, habrá que emplear git para diseccionar a partir de qué cambio se produce el problema, añadir un nuevo ticket en redmine con la descripción del problema y poner al corriente al desarrollador del equipo.
Jenkins es capaz de generar reportes sobre listas de correos o cualquier otro medio de comunicación para informar del estado de las tareas ejecutadas.