ci 4 free - colombiajug.files.wordpress.com · 23/06/12 charles edward bedon cortazar 1/27 ci 4...
TRANSCRIPT
![Page 1: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/1.jpg)
23/06/12 1/27Charles Edward Bedon Cortazar
CI 4 FreeAlternativas para implantar integración continua
Nicolás Bohórquez Gutierrez@nickmancol
![Page 2: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/2.jpg)
Nicolás Bohórquez
Ingeniero UNAL
● Programador (Logo, GWBasic, Assembler, C, Pascal, C++, VB6, Java, C# (mono), Php, Groovy, Python)
● Desarrollador Web
● Consultor en proyectos tributarios, aduaneros, educación, startups
● Cofundador de Alephsa (2008), Solocontrata.me (2012)
● Blogger
![Page 3: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/3.jpg)
Agenda
● Qué es CI?● Porqué implantar CI?● Cómo implantar CI?● Demo
![Page 4: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/4.jpg)
Que es CI?
● Técnica para “automatizar” tareas importantes dentro del ciclo de desarrollo de proyectos de software.
● Propuesta inicialmente por Martin Fowler
![Page 5: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/5.jpg)
Porqué implantar CI?
● Genera una cultura dentro del equipo
● Apoya el desarrollo ágil
● Promueve los procesos y la documentación
● Infraestructura● Setup de algunas
herramientas● Disciplina● Mayor comunicación
![Page 6: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/6.jpg)
Cómo implantar CI?
![Page 7: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/7.jpg)
Cómo implantar CI?
● Gestión de proyecto● IDE para minimizar distracción● Redacción de especificaciones / pruebas /
tareas● Construcción automatizada● Control de cambios● Registro de avances, problemas, mejoras● Socialización de cambios
![Page 8: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/8.jpg)
1-1 Gestión de proyecto
● Memoria colectiva● Tareas claras● Se puede medir el
avance!!● Integrable con el IDE● Sirve como
documentación
● Exige disciplina● Toma tiempo● Requiere lenguaje
natural y algunas veces diagramas
![Page 9: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/9.jpg)
1-1 Gestión de proyecto
● Github
● Wiki, tickets● Git
● Bitbucket
● Wiki, tickets● Hg, Git● Repo privado
● Trac
● Wiki, Tickets● Hg, Git, Svn● Xp-dev
![Page 10: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/10.jpg)
1-2 IDE
● Mejor si se integra con tickets, wiki, pruebas ● Todos tienen uno preferido● Si puede pagarlo, generalmente IntelliJ de
Jetbrains es una buena idea
![Page 11: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/11.jpg)
Nano Proyecto
Aplicación Web (REST) que sume dos argumentos enteros (GET)
![Page 12: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/12.jpg)
DEMOProyecto en xp-dev
Eclipse – Mylyn – Trac
![Page 13: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/13.jpg)
Donde vamos?
![Page 14: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/14.jpg)
Bonus 1: Maven
● Manejo de dependencias
● Reportes de pruebas
● Fases específicas (Concordion, AspectJ, Roo)
● Control de cambios versiones
● Generación de documentación
● Manejo de licencias
● Publicación de artefactos (jar, war, ear)
● Alternativas: Gradle, Ivy, Ant
![Page 15: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/15.jpg)
Bonus 2: Concordion
● Behaviour Driven Development● Escrito en lenguaje natural sobre html● Sirve como documentación activa● Puede lanzar pruebas unitarias, de integración
o de aceptación● Se integra con eclipse y maven
![Page 16: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/16.jpg)
Bonus 2: Concordion
![Page 17: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/17.jpg)
DEMOTarea en mylyn
Definición de pruebas en concordionCodificaciónConstrucción
![Page 18: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/18.jpg)
Donde vamos?
![Page 19: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/19.jpg)
1-3 Paas
● Plataforma como servicio● Amazon (Instancia micro por 1 año, ssh, DIY)● Heroku (1 Dyno gratuito, instant deployment)● Cloudfoundry (20 apps, instant deployment)● Openshift (3 apps, instant deployment, ssh)
● java, python, php, ruby● postgres, mysql● DIY (opcional)
![Page 20: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/20.jpg)
1-3 Paas
![Page 21: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/21.jpg)
1-4 Jenkins
● Integración continua para maven, ant, scripts● Plugins para cvs, svn, hg, git, perforce● Ejecución de pruebas xUnit, Concordion,
Jmeter● Notificación via email, IM, twitter● Trigger a partir de cambios en repositorio, IM,
twitter, cron
![Page 22: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/22.jpg)
1-4 Jenkins
![Page 23: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/23.jpg)
DemoConstrucción de nuestro proyecto
Notificación de errores
![Page 24: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/24.jpg)
Donde vamos?
![Page 25: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/25.jpg)
1-5 Ifttt
● Integra varios servicios existentes en la red● Ultra simple● SMS a partir de correo o trino generado por
Jenkins● Post a partir de correo generado por Jenkins
![Page 26: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/26.jpg)
Que falta?
● Integrar Wiki con IDE● Deployment automático desde Jenkins● Pruebas de rendimiento y cross browsing● Publicación de documentación● Miles de mejoras, plugins, etc● Hacer un proyecto de la comunidad Java en
Colombia!!!
![Page 27: CI 4 Free - colombiajug.files.wordpress.com · 23/06/12 Charles Edward Bedon Cortazar 1/27 CI 4 Free Alternativas para implantar integración continua Nicolás Bohórquez Gutierrez](https://reader033.vdocuments.mx/reader033/viewer/2022051809/60121e96f4aabe6e5432522b/html5/thumbnails/27.jpg)
Gracias!@nickmancol
[email protected]://vidanp.wordpress.com
http://blogs.colombiadigital.net/camino-a-la-dominacion-digital/