Beneficios de implementar Integración Continua en el proceso de desarrollo en equipos ya formados, un blanqueo de que todo no es perfecto, pero que mejora la calidad de código y elimina incertidumbres entre los programadores. Instalación y practica de su implementación.
2. http://es.wikipedia.org
La integración continua (continuous integration en inglés)
es un modelo informático propuesto inicialmente por Martin
Fowler que consiste en hacer integraciones automáticas de
un proyecto lo más a menudo posible para así poder
detectar fallos cuanto antes. Entendemos por integración la
compilación y ejecución de pruebas de todo un proyecto.
3. ¿Quien es Martin Fowler?
Él --->
http://es.wikipedia.org/wiki/Martin_Fowler
4. ¿Qué es CI?
Es una práctica de desarrollo, consiste en subir
el código a un repositorio varias veces al día.
Cada subida es verificada por un proceso
automatizado permitiendo que los equipos
detecten los problemas a tiempo.
6. ● Reducir riesgos y tiempo
● Reducir procesos repetitivos manuales
● Crear una versión de software mediante un proceso
conocido, confiable, probado, versionado y
repetible.
● Mejorar la visibilidad del estado del proyecto.
● Lograr una mayor autoconfianza y seguridad en el
equipo de desarrollo.
● Mejorar la calidad de código.
8. Pero sí minimiza riesgos y garantiza
el control de determinadas tareas en
cada nueva entrada al repositorio.
9. ¿Qué herramientas usar para implementar CI ?
http://www.continuousintegrationtools.com/?opensource
Las vedettes:
Jenkins (https://jenkins-ci.org/) Plugin para Jira
Travis CI (https://travis-ci.org/)
Bamboo (https://es.atlassian.com/software/bamboo)← by Atlassian
10. Los usos más populares:
● Validar Sintaxis.
● Validar estilo de codigo (Code Style).
● Ejecutar Test Unitarios/Funcionales/Integración.
● Automatización de despliegue. (Deploy).
● Automatizar mantenimiento y despliegue de
entornos a otras unidades de negocio.
12. http://es.wikipedia.org
Jenkins es un software de Integración continua
open source escrito en Java. Proporciona
integración continua para el desarrollo de
software. Es un sistema corriendo en un servidor
como Apache Tomcat. Soporta herramientas de
control de versiones como CVS, Subversion, Git ...
13. ¿Porqué Jenkins?
● Jenkins tiene una suite de plugins que
permite enfocarse en el proceso a
automatizar.
● Tiene un desarrollo activo, ya esta la
segunda versión.
● Encontrar soporte de otros usuarios por su
popularidad.
● Tiene el plugin de Chuck Norris.
15. Configurar la primer tarea en Jenkins
- Indicar el nombre.
- Una breve descripción.
- Cuantas versiones almacenar.
- Agregar un repositorio.
- Indicar que debe monitorear.
- Cada cuanto monitorear.
- Las tareas a realizar en cada ejecución.
- Indicar a quien notificar.