integración continua

45
Integración continua

Upload: geykel-moreno

Post on 09-Apr-2017

110 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Integración continua

Integración continua

Page 2: Integración continua

Geykel [email protected]

@geykel

http://geykel.com

Page 3: Integración continua

Había una vez...

Page 4: Integración continua

escribiendo código...

Page 5: Integración continua

cierto día, el equipo comenzó a crecer...

Page 6: Integración continua

intercambio de archivos de código...

Page 7: Integración continua

intercambio de archivos de código...

Page 8: Integración continua

intercambio de archivos de código...

Page 9: Integración continua

intercambio de archivos de código...

Page 10: Integración continua

esperen un momento... debe existir una mejor

manera ¿no?

Page 11: Integración continua

¡control de código fuente al rescate!

Page 12: Integración continua

y así, se solucionó el problema de compartir

archivos...

Page 13: Integración continua

modificando el código

Page 14: Integración continua

enviando al repositorio de código fuente

Page 15: Integración continua

unos días después...

Page 16: Integración continua

actualizando copia local del código fuente

Page 17: Integración continua

revisando copia local del código fuente

Page 18: Integración continua

revisando copia local del código fuente

Page 19: Integración continua

revisando copia local del código fuente

Page 20: Integración continua

revisando copia local del código fuente

Page 21: Integración continua

revisando copia local del código fuente

Page 22: Integración continua

revisando copia local del código fuente

Page 23: Integración continua

revisando copia local del código fuente

Page 24: Integración continua

revisando copia local del código fuente

Page 25: Integración continua

revisando copia local del código fuente

Page 26: Integración continua

¿qué tal si...?

Page 27: Integración continua

servidor de integración continua

servidor de integración

continua

Page 28: Integración continua

funcionalidad terminada de programar

servidor de integración

continua

Page 29: Integración continua

unos minutos más tarde...

Page 30: Integración continua

cambios detectados

servidor de integración

continua

Page 31: Integración continua

construyendo...

servidor de integración

continua

Page 32: Integración continua

ejecutando pruebas...

servidor de integración

continua

Page 33: Integración continua

¡build roto!

servidor de integración

continua

Page 34: Integración continua

Running Unit Tests: Passed: 106, Failed: 1, Ignored: 0 Test: DebeEncontrarPlantillas Directory d:\MisProyectos\Blog\Plantillas not found.

Page 35: Integración continua

arreglando el build

Page 36: Integración continua

enviando los arreglos al control de código

servidor de integración

continua

Page 37: Integración continua

cambios detectados

servidor de integración

continua

Page 38: Integración continua

construyendo...

servidor de integración

continua

Page 39: Integración continua

ejecutando pruebas...

servidor de integración

continua

Page 40: Integración continua

¡build ok!

servidor de integración

continua

Page 41: Integración continua

radiador

sistema 1

sistema 3

sistema 5 sistema 6

sistema 4

sistema 2

Page 42: Integración continua

Prácticas de la integración contínua

❏ Mantener un único repositorio de código.

❏ Automatizar el build.

❏ Has que el build sea self-testing.

❏ Todos hacen commit una vez al día a la línea principal “mainline”.

❏ Cada commit debe provocar un build de la línea principal en una máquina de integración o agente.

Page 43: Integración continua

Prácticas de la integración contínua

❏ Arregla los builds rotos inmediatamente.

"nobody has a higher priority task than fixing the build"

Kent Beck

❏ Mantener el build rápido.

❏ Prueba en un clon del ambiente de producción.

❏ Hás que sea fácil para todos obtener los últimos ejecutables.

❏ Todos pueden ver que está sucediendo.

Page 44: Integración continua

http://www.martinfowler.com/articles/continuousIntegration.html

Page 45: Integración continua