SlideShare una empresa de Scribd logo
1 de 14
Taller de Jenkins
Ale Sequeira
Sobre mi
• Test Engineer
• Programador especializado en testing
○ 15+ en tecnología
○ Programador => Test Engineer
• Java, Groovy, JUnit, Mockito, Shell scripting, Jenkins
• Release Management
• … y un poquito de seguridad y performance
AGENDA
1
2
3
4
5
6
Instalación
Plugins
Modelo master-slave
Jobs y Pipelines
Shared libraries
Ejemplos
• Para qué?
• Ejecutar jobs
• Visualization
• Notifications
Introducción
• JDK
• Tomcat
• Jenkins war
○ o Docker image
• Configuración inicial
○ Usuario
○ Plugins
Instalación
• Ejercicio: crear un job tradicional que:
○ Baje https://github.com/asequeira/argentesting
○ Compile
○ Ejecute tests
○ Instale localmente
Jobs
• Job sencillos
• Workflow Lineal
• Configuración Manual
• Sin versionado
• Un job por branch
• Sin retry
• Orquestación limitada
• Groovy DSL (Flexible)
• Jenkinsfile (Versionado)
• Stages + Steps (Jenkins
+ 3rd parties)
• 100+ steps/integrations
• Visualización
• Shared Libraries
(reutilización)
Pipelines
• Groovy
• node
• tools
• stages + steps
○ sh
○ echo
○ writeFile, readFile
• Notificaciones
•
Sintaxis básica
• Ejercicio: crear un pipeline con el mismo
comportamiento que el ejercicio anterior
Pipelines
• Orquestación
○ lock
○ build
○ input
○ parallel
○ waitUntil
• archive/stash
Sintaxis avanzada
• Cómo funcionan
• Buenas prácticas
• Ejercicio: escribir una librería que incrementa la versión
antes de hacer un deployment
• Ejercicio 2: testear la librería anterior y crear su pipeline
Shared libraries
• Build: setup + compilación + tests
• Tests de Integración
• Coordinación con otros jobs/dependencias
• Versionado
• Deployment
○ Promoción
• Notificaciones
Ejemplo CD
• Ejercicio: crear un nuevo proyecto con su pipeline. Este
proyecto está en un repositorio separado. Para ejecutar
los tests de integración este nuevo proyecto y el anterior
deber haber corrido tests de unidad y tener los binarios.
Luego se hace el incremento de versión, deployment de
los dos proyectos y promoción.
Ejemplo CD

Más contenido relacionado

La actualidad más candente

.NET Core General - Globant Tech Insiders .Net
.NET Core General - Globant Tech Insiders .Net.NET Core General - Globant Tech Insiders .Net
.NET Core General - Globant Tech Insiders .NetGlobant
 
Introducción a NodeJS
Introducción a NodeJSIntroducción a NodeJS
Introducción a NodeJSAlberto Gimeno
 
Java day 2018 -> Integración y entrega continua no es más trabajo
Java day 2018 ->  Integración y entrega continua no es más trabajoJava day 2018 ->  Integración y entrega continua no es más trabajo
Java day 2018 -> Integración y entrega continua no es más trabajoDavid Recinos Orellana
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con JenkinsCésar Hernández
 
Node para Javeros: Conoce a tu enemigo
Node para Javeros: Conoce a tu enemigoNode para Javeros: Conoce a tu enemigo
Node para Javeros: Conoce a tu enemigoMicael Gallego
 
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Micael Gallego
 
Netcoreconf 2020 - Gammification with Microsoft Learn
Netcoreconf 2020 - Gammification with Microsoft LearnNetcoreconf 2020 - Gammification with Microsoft Learn
Netcoreconf 2020 - Gammification with Microsoft LearnAlex Martinez Mañé
 
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...César Hernández
 
Presentacion de Integración Continua
Presentacion de Integración ContinuaPresentacion de Integración Continua
Presentacion de Integración ContinuaRodrigo Ayala
 
Angular 2 Framework para la Web
Angular 2 Framework para la WebAngular 2 Framework para la Web
Angular 2 Framework para la Webrafaecheve
 
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...Micael Gallego
 
Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJSRodrigo Pimentel
 
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...Marco Bellido
 
NodeJS
NodeJSNodeJS
NodeJSIBM
 

La actualidad más candente (20)

.NET Core General - Globant Tech Insiders .Net
.NET Core General - Globant Tech Insiders .Net.NET Core General - Globant Tech Insiders .Net
.NET Core General - Globant Tech Insiders .Net
 
Introducción a NodeJS
Introducción a NodeJSIntroducción a NodeJS
Introducción a NodeJS
 
Atica Dev Ops II
Atica Dev Ops IIAtica Dev Ops II
Atica Dev Ops II
 
Testing Ruby on Rails (spanish)
Testing Ruby on Rails (spanish)Testing Ruby on Rails (spanish)
Testing Ruby on Rails (spanish)
 
Java day 2018 -> Integración y entrega continua no es más trabajo
Java day 2018 ->  Integración y entrega continua no es más trabajoJava day 2018 ->  Integración y entrega continua no es más trabajo
Java day 2018 -> Integración y entrega continua no es más trabajo
 
ASP.NET Core 1.0
ASP.NET Core 1.0ASP.NET Core 1.0
ASP.NET Core 1.0
 
Integración contínua con Jenkins
Integración contínua con JenkinsIntegración contínua con Jenkins
Integración contínua con Jenkins
 
Introducción a WPF
Introducción a WPFIntroducción a WPF
Introducción a WPF
 
Node para Javeros: Conoce a tu enemigo
Node para Javeros: Conoce a tu enemigoNode para Javeros: Conoce a tu enemigo
Node para Javeros: Conoce a tu enemigo
 
Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019Dev Tools para Kubernetes - Codemotion 2019
Dev Tools para Kubernetes - Codemotion 2019
 
Netcoreconf 2020 - Gammification with Microsoft Learn
Netcoreconf 2020 - Gammification with Microsoft LearnNetcoreconf 2020 - Gammification with Microsoft Learn
Netcoreconf 2020 - Gammification with Microsoft Learn
 
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
 
Presentacion de Integración Continua
Presentacion de Integración ContinuaPresentacion de Integración Continua
Presentacion de Integración Continua
 
Angular 2 Framework para la Web
Angular 2 Framework para la WebAngular 2 Framework para la Web
Angular 2 Framework para la Web
 
Integracion Continua en Oracle ADF
Integracion Continua en Oracle ADFIntegracion Continua en Oracle ADF
Integracion Continua en Oracle ADF
 
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
Herramientas y plugins para el desarrollo de aplicaciones cloud native para K...
 
Probando aplicaciones AngularJS
Probando aplicaciones AngularJSProbando aplicaciones AngularJS
Probando aplicaciones AngularJS
 
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...
¨Servermore or serverless.¨: Introducción a CI/CD desde dos filosofías de inf...
 
NodeJS
NodeJSNodeJS
NodeJS
 
El coste de no usar integración continua
El coste de no usar integración continuaEl coste de no usar integración continua
El coste de no usar integración continua
 

Similar a Argentesting 2017 - Taller de Jenkins

Argentesting 2017 - Jenkins Pipelines desde la trinchera
Argentesting 2017 - Jenkins Pipelines desde la trincheraArgentesting 2017 - Jenkins Pipelines desde la trinchera
Argentesting 2017 - Jenkins Pipelines desde la trincheraArgentesting
 
Earthly, Dockerfile con esteroides
Earthly, Dockerfile con esteroidesEarthly, Dockerfile con esteroides
Earthly, Dockerfile con esteroidesMario IC
 
Docker_K8S_lecciones_netcoreconf_2022.pdf
Docker_K8S_lecciones_netcoreconf_2022.pdfDocker_K8S_lecciones_netcoreconf_2022.pdf
Docker_K8S_lecciones_netcoreconf_2022.pdfLeonardo Micheloni
 
BBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOpsBBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOpsErnesto Anaya
 
Meetup - NGinx - 08/2014
Meetup - NGinx - 08/2014Meetup - NGinx - 08/2014
Meetup - NGinx - 08/2014mszuchman
 
ReConnect 2015 - ASP.NET 5: MVC 6 y EF 7
ReConnect 2015  - ASP.NET 5: MVC 6 y EF 7ReConnect 2015  - ASP.NET 5: MVC 6 y EF 7
ReConnect 2015 - ASP.NET 5: MVC 6 y EF 7Luis Ruiz Pavón
 
Dynamics saturday madrid 2018 bc-on-docker - jakub
Dynamics saturday madrid 2018   bc-on-docker - jakubDynamics saturday madrid 2018   bc-on-docker - jakub
Dynamics saturday madrid 2018 bc-on-docker - jakubDemian Raschkovan
 
Despliegue de aplicaciones Java con Docker y Kubernetes
Despliegue de aplicaciones Java con Docker y KubernetesDespliegue de aplicaciones Java con Docker y Kubernetes
Despliegue de aplicaciones Java con Docker y KubernetesJaime Perera Merino
 
Herramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMPHerramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMPKeopx
 
Desarrollo con Java y metodologías agiles
Desarrollo con Java y metodologías agilesDesarrollo con Java y metodologías agiles
Desarrollo con Java y metodologías agilesJobsket
 
Docker Birthday Peru #dockerbday
Docker Birthday Peru #dockerbdayDocker Birthday Peru #dockerbday
Docker Birthday Peru #dockerbdayMario IC
 

Similar a Argentesting 2017 - Taller de Jenkins (20)

Argentesting 2017 - Jenkins Pipelines desde la trinchera
Argentesting 2017 - Jenkins Pipelines desde la trincheraArgentesting 2017 - Jenkins Pipelines desde la trinchera
Argentesting 2017 - Jenkins Pipelines desde la trinchera
 
ATICA DevOps
ATICA DevOpsATICA DevOps
ATICA DevOps
 
Earthly, Dockerfile con esteroides
Earthly, Dockerfile con esteroidesEarthly, Dockerfile con esteroides
Earthly, Dockerfile con esteroides
 
Docker_K8S_lecciones_netcoreconf_2022.pdf
Docker_K8S_lecciones_netcoreconf_2022.pdfDocker_K8S_lecciones_netcoreconf_2022.pdf
Docker_K8S_lecciones_netcoreconf_2022.pdf
 
Migrando CI a Docker
Migrando CI a DockerMigrando CI a Docker
Migrando CI a Docker
 
Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!Jenkins, no me rompas los builds!
Jenkins, no me rompas los builds!
 
Introduccion Java.ppt
Introduccion Java.pptIntroduccion Java.ppt
Introduccion Java.ppt
 
BBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOpsBBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOps
 
Desmontando a Jenkins :-)
Desmontando a Jenkins :-)Desmontando a Jenkins :-)
Desmontando a Jenkins :-)
 
Meetup - NGinx - 08/2014
Meetup - NGinx - 08/2014Meetup - NGinx - 08/2014
Meetup - NGinx - 08/2014
 
ReConnect 2015 - ASP.NET 5: MVC 6 y EF 7
ReConnect 2015  - ASP.NET 5: MVC 6 y EF 7ReConnect 2015  - ASP.NET 5: MVC 6 y EF 7
ReConnect 2015 - ASP.NET 5: MVC 6 y EF 7
 
Dynamics saturday madrid 2018 bc-on-docker - jakub
Dynamics saturday madrid 2018   bc-on-docker - jakubDynamics saturday madrid 2018   bc-on-docker - jakub
Dynamics saturday madrid 2018 bc-on-docker - jakub
 
202204-Modernizando aplicaciones legacy
202204-Modernizando aplicaciones legacy202204-Modernizando aplicaciones legacy
202204-Modernizando aplicaciones legacy
 
Despliegue de aplicaciones Java con Docker y Kubernetes
Despliegue de aplicaciones Java con Docker y KubernetesDespliegue de aplicaciones Java con Docker y Kubernetes
Despliegue de aplicaciones Java con Docker y Kubernetes
 
Herramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMPHerramientas de trabajo para entorno LAMP
Herramientas de trabajo para entorno LAMP
 
"Al rico" PHP
"Al rico" PHP"Al rico" PHP
"Al rico" PHP
 
Desarrollo con Java y metodologías agiles
Desarrollo con Java y metodologías agilesDesarrollo con Java y metodologías agiles
Desarrollo con Java y metodologías agiles
 
Docker Birthday Peru #dockerbday
Docker Birthday Peru #dockerbdayDocker Birthday Peru #dockerbday
Docker Birthday Peru #dockerbday
 
Dokerize rails
Dokerize railsDokerize rails
Dokerize rails
 
DevOps+[Chef/Docker]
 DevOps+[Chef/Docker] DevOps+[Chef/Docker]
DevOps+[Chef/Docker]
 

Más de Argentesting

Análisis de Aplicaciones móviles - aspectos de seguridad
Análisis de Aplicaciones móviles - aspectos de seguridadAnálisis de Aplicaciones móviles - aspectos de seguridad
Análisis de Aplicaciones móviles - aspectos de seguridadArgentesting
 
Argentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatizaciónArgentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatizaciónArgentesting
 
Argentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágilArgentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágilArgentesting
 
Argentesting 2019 - Desentrañando selenium
Argentesting 2019 - Desentrañando seleniumArgentesting 2019 - Desentrañando selenium
Argentesting 2019 - Desentrañando seleniumArgentesting
 
Argentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting
 
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting
 
Argentesting 2019 - Por que-python-esta-buenisimo
Argentesting 2019 - Por que-python-esta-buenisimoArgentesting 2019 - Por que-python-esta-buenisimo
Argentesting 2019 - Por que-python-esta-buenisimoArgentesting
 
Argentesting 2019 - Cypress una completa experiencia de testing end to end
Argentesting 2019 - Cypress una completa experiencia de testing end to endArgentesting 2019 - Cypress una completa experiencia de testing end to end
Argentesting 2019 - Cypress una completa experiencia de testing end to endArgentesting
 
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...Argentesting
 
Argentesting 2019 - Testing exploratorio basado en sesiones
Argentesting 2019 - Testing exploratorio basado en sesionesArgentesting 2019 - Testing exploratorio basado en sesiones
Argentesting 2019 - Testing exploratorio basado en sesionesArgentesting
 
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitoso
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitosoArgentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitoso
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitosoArgentesting
 
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting
 
Argentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting
 
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...Argentesting
 
Argentesting 2019 - Analizando la seguridad en aplicaciones móviles
Argentesting 2019 - Analizando la seguridad en aplicaciones móvilesArgentesting 2019 - Analizando la seguridad en aplicaciones móviles
Argentesting 2019 - Analizando la seguridad en aplicaciones móvilesArgentesting
 
Argentesting 2019 - Accesibilidad, donde las especialidades convergen
Argentesting 2019 - Accesibilidad, donde las especialidades convergenArgentesting 2019 - Accesibilidad, donde las especialidades convergen
Argentesting 2019 - Accesibilidad, donde las especialidades convergenArgentesting
 
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientes
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientesArgentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientes
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientesArgentesting
 
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testing
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testingArgentesting 2019 - Cómo la 4ta revolución industrial afectará al testing
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testingArgentesting
 
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...Argentesting
 
Argentesting 2019 - Lippia, un framework multipropósito
Argentesting 2019 - Lippia, un framework multipropósitoArgentesting 2019 - Lippia, un framework multipropósito
Argentesting 2019 - Lippia, un framework multipropósitoArgentesting
 

Más de Argentesting (20)

Análisis de Aplicaciones móviles - aspectos de seguridad
Análisis de Aplicaciones móviles - aspectos de seguridadAnálisis de Aplicaciones móviles - aspectos de seguridad
Análisis de Aplicaciones móviles - aspectos de seguridad
 
Argentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatizaciónArgentesting 2019 - Cambiando el paradigma de la automatización
Argentesting 2019 - Cambiando el paradigma de la automatización
 
Argentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágilArgentesting 2019 - Cómo convertirse en un tester ágil
Argentesting 2019 - Cómo convertirse en un tester ágil
 
Argentesting 2019 - Desentrañando selenium
Argentesting 2019 - Desentrañando seleniumArgentesting 2019 - Desentrañando selenium
Argentesting 2019 - Desentrañando selenium
 
Argentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOps
 
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
 
Argentesting 2019 - Por que-python-esta-buenisimo
Argentesting 2019 - Por que-python-esta-buenisimoArgentesting 2019 - Por que-python-esta-buenisimo
Argentesting 2019 - Por que-python-esta-buenisimo
 
Argentesting 2019 - Cypress una completa experiencia de testing end to end
Argentesting 2019 - Cypress una completa experiencia de testing end to endArgentesting 2019 - Cypress una completa experiencia de testing end to end
Argentesting 2019 - Cypress una completa experiencia de testing end to end
 
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...
Argentesting 2019 - Testing de accesibilidad: un valor agregado cómo profesio...
 
Argentesting 2019 - Testing exploratorio basado en sesiones
Argentesting 2019 - Testing exploratorio basado en sesionesArgentesting 2019 - Testing exploratorio basado en sesiones
Argentesting 2019 - Testing exploratorio basado en sesiones
 
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitoso
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitosoArgentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitoso
Argentesting 2019 - Ser ágiles, hacer ágiles. la historia de un proyecto exitoso
 
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
Argentesting 2019 - En la era de la disrupción ¿Cómo estamos imaginando el fu...
 
Argentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOpsArgentesting 2019 - Introducción al testing en DevOps
Argentesting 2019 - Introducción al testing en DevOps
 
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...
Argentesting 2019 - Cómo ser más productivo utilizando la línea de comando pa...
 
Argentesting 2019 - Analizando la seguridad en aplicaciones móviles
Argentesting 2019 - Analizando la seguridad en aplicaciones móvilesArgentesting 2019 - Analizando la seguridad en aplicaciones móviles
Argentesting 2019 - Analizando la seguridad en aplicaciones móviles
 
Argentesting 2019 - Accesibilidad, donde las especialidades convergen
Argentesting 2019 - Accesibilidad, donde las especialidades convergenArgentesting 2019 - Accesibilidad, donde las especialidades convergen
Argentesting 2019 - Accesibilidad, donde las especialidades convergen
 
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientes
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientesArgentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientes
Argentesting 2019 - Automatizar al infinito y más allá, trae sus inconvenientes
 
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testing
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testingArgentesting 2019 - Cómo la 4ta revolución industrial afectará al testing
Argentesting 2019 - Cómo la 4ta revolución industrial afectará al testing
 
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...
Argentesting 2019 - Caso de éxito de pruebas automatizadas en industria autom...
 
Argentesting 2019 - Lippia, un framework multipropósito
Argentesting 2019 - Lippia, un framework multipropósitoArgentesting 2019 - Lippia, un framework multipropósito
Argentesting 2019 - Lippia, un framework multipropósito
 

Último

Evaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdfEvaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdfGuillermoBarquero7
 
Trabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - OfimáticaTrabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - OfimáticaKANTUPAULAPORCELYUCR
 
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOSESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOSBeatrizGonzales19
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Opentix
 
2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptxEncomiendasElSherpa
 
Caso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business CentralCaso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business CentralAitana
 

Último (6)

Evaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdfEvaluación del riesgo tecnologías informáticas.pdf
Evaluación del riesgo tecnologías informáticas.pdf
 
Trabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - OfimáticaTrabajo de Powerpoint - Unsaac - Ofimática
Trabajo de Powerpoint - Unsaac - Ofimática
 
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOSESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
ESCRITORIO DE WINDOWS 11 Y SUS ELEMENTOS
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 
2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx2da. Clase Mecanografía e introducción a Excel (2).pptx
2da. Clase Mecanografía e introducción a Excel (2).pptx
 
Caso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business CentralCaso de Exito LPL Projects Logistics Spain y Business Central
Caso de Exito LPL Projects Logistics Spain y Business Central
 

Argentesting 2017 - Taller de Jenkins

  • 2. Sobre mi • Test Engineer • Programador especializado en testing ○ 15+ en tecnología ○ Programador => Test Engineer • Java, Groovy, JUnit, Mockito, Shell scripting, Jenkins • Release Management • … y un poquito de seguridad y performance
  • 4. • Para qué? • Ejecutar jobs • Visualization • Notifications Introducción
  • 5. • JDK • Tomcat • Jenkins war ○ o Docker image • Configuración inicial ○ Usuario ○ Plugins Instalación
  • 6.
  • 7. • Ejercicio: crear un job tradicional que: ○ Baje https://github.com/asequeira/argentesting ○ Compile ○ Ejecute tests ○ Instale localmente Jobs
  • 8. • Job sencillos • Workflow Lineal • Configuración Manual • Sin versionado • Un job por branch • Sin retry • Orquestación limitada • Groovy DSL (Flexible) • Jenkinsfile (Versionado) • Stages + Steps (Jenkins + 3rd parties) • 100+ steps/integrations • Visualización • Shared Libraries (reutilización) Pipelines
  • 9. • Groovy • node • tools • stages + steps ○ sh ○ echo ○ writeFile, readFile • Notificaciones • Sintaxis básica
  • 10. • Ejercicio: crear un pipeline con el mismo comportamiento que el ejercicio anterior Pipelines
  • 11. • Orquestación ○ lock ○ build ○ input ○ parallel ○ waitUntil • archive/stash Sintaxis avanzada
  • 12. • Cómo funcionan • Buenas prácticas • Ejercicio: escribir una librería que incrementa la versión antes de hacer un deployment • Ejercicio 2: testear la librería anterior y crear su pipeline Shared libraries
  • 13. • Build: setup + compilación + tests • Tests de Integración • Coordinación con otros jobs/dependencias • Versionado • Deployment ○ Promoción • Notificaciones Ejemplo CD
  • 14. • Ejercicio: crear un nuevo proyecto con su pipeline. Este proyecto está en un repositorio separado. Para ejecutar los tests de integración este nuevo proyecto y el anterior deber haber corrido tests de unidad y tener los binarios. Luego se hace el incremento de versión, deployment de los dos proyectos y promoción. Ejemplo CD