SlideShare una empresa de Scribd logo
GitFlow - DevOps
+ Jenkins X Demo
Agenda
● Qué es GitFlow
○ Dónde y cuándo aplicarlo?
○ Ventajas e inconvenientes
○ “Reglas del juego”
○ Sintiendo el “flow”
● Cómo DevOps se adapta a GitFlow
● Jenkins X - LABS
● Q&A
Hello World - $whoami
Tech Lead, Senior DevOps, Speaker, Technical Coach, AWS certified and Internet
Infrastructure Specialist
● CEO at Geko Cloud
● Vueling
● Privalia
● Wallapop
● Emagister
● ...
https://www.linkedin.com/in/joseluissanchez/
https://geko.cloud
Qué es GitFlow
● Basado en GIT- sistema de control de versiones más utilizado en desarrollo.
● Se basa en un conjunto de prácticas y flujos que aportan control y evitan
conflictos en el proceso de desarrollos complejos.
● Todo gira entorno al control y gestión de ramas intermedias temporales, fijas
y sus migraciones y fusiones.
● Integración continua que aporta un marco de trabajo definido entre todos los
equipos que participan del desarrollo de un mismo producto (repo).
● Plataforma de plugins que nos ayuda en la CLI para crear y gestionar el
ecosistema
Dónde y cuándo aplicarlo?
● Se recomienda aplicarlo en
○ Entornos semi complejos y complejos de desarrollo
○ Plataforma basada en microservicios con repos independientes
○ Proyectos OpenSource
○ Proyectos single repo muy contributivos
○ Equipos de + 2 personas
○ Proyectos que utilicen Agile framework
○ Proyectos que quieran utilizar mecanismos de test intermedios y unitarios
con GitOps
● No se recomienda en:
○ Proyectos monolíticos
○ Proyectos con 2 o menos desarrolladores
○ Proyectos que no desarrollan funcionalidades de forma independiente
○ Proyectos con personal que desconozca el método y no tenga tiempo MVP
Ventajas
1. Se adapta al formato de “Sprint” basado en metodologías ágiles entregando de
forma continua con CI/CD ya que el entregable es una RELEASE.
2. Evita conflictos entre ramas
3. Protege el estado y fiabilidad de la rama master
4. Mejora la trazabilidad del código
5. Facilita la cooperación colectiva creando ramas por feature
6. El concepto de hotfix agiliza resoluciones de problemas en entornos reales
Desventajas
1. Es primordial que el equipo de desarrollo y devops conozcan el método y
apliquen los flujos y reglas.
2. Agrega complejidad el proceso y pasos intermedios
3. Todo gira alrededor del concepto release
4. Es recomendable crear entornos intermedios temporales
5. Complica el entorno de integración
6. Debemos tener personas que en momentos de conflictos tengan la capacidad
de coordinar conflictos y/o dependencias y conozcan los plugins de git flow.
7. Es recomendable utilizar herramientas complejas y de testing pre integración
que garanticen y den visibilidad del estado de las migraciones entre ramas.
8. Es preciso usar herramientas de los repos como PR para mejorar la parte
contributiva
Reglas del juego
Deben existir dos ramas principales:
● master → eje de la verdad
● develop → eje del desarrollo
GitFlow INIT --> prefijos para las ramas auxiliares:
● feature/
● release/
● hotfix/
● bugfix/
Los flujos....
Nueva
feature
Nueva
Release
Nuevo
Hotfix
Git Flow CLI $ brew install git-flow-avh
$ apt-get install git-flow
psst!
JL… start demo!
Sintiendo el flow
Cómo DevOps Se adapta a GitFlow?
Conjunto de herramientas y prácticas basadas en automatismos centralizadas en el eje del
desarrollo contínuo:
● Single point of truth = GIT
● Procesos automáticos disparados por eventos de Git (merge, finish feature, PR...)
● Gestión de entornos automáticos y estáticos
● Automatización flujos con aprobación por QA
● Definición de artefactos y entregables inmutables
● Adaptar pipelines aisladas para trabajar de forma
coordinada con los procesos CI/CD
GIT OPS! TO THE RESCUE!
Cómo DevOps Se adapta a GitFlow?
Cómo GitOps Se adapta a GitFlow?
● Para todo DevOps es primordial entender a la perfección el ciclo de desarrollo de su
empresa para mejorarlo y automatizarlo.
● Con la llegada de los contenedores docker, los flujos de desarrollo han evolucionando
permitiendo testear de forma segura el comportamiento de un producto sin que existan
diferencias entre entornos.
● No existe un modelo de GitOps único y en cada caso existe una adaptación. GIT es el eje de
unión entre desarrollo y operaciones.
● Es primordial poder testear fases de calidad y versionar la infraestructura con entregables
concretos que permita portar un artefacto desde un desarrollador hasta producción.
Desafíos de GITOPS?
● Identificar entornos (pre/prod/stag/devel...)
● Identificar hooks y eventos para automatizar
● Definir herramientas complejas con entornos dinámicos
● Los flujos han de seguir siempre el mismo patrón
● Orientar entornos dinámicos en base a PR
● Es preciso ir de la mano de QA para determinar aprobaciones manuales para el paso a
producción
● Definir métodos de deployment (blue/green/canary)
● Definir rollbacks y procedimientos
● Determinar procesos de DB migrations
● ...
Cómo DevOps Se adapta a GitFlow?
Rama Entorno
Feature - PR Entorno volátil
Develop Integración
Release Staging
Master Prod
Demo Time!
Jenkins X
● Como dice su creador: ‘open source opinionated way to do continuous
delivery with Kubernetes, natively’.
● Jenkins X permite desplegar las aplicaciones en un ecosistema
Kubernetes. Usa las mejores prácticas de DevOps y mejora la calidad y
velocidad de CI/CD.
● Ejecuta un set de herramientas para cumplir un objetivos: simplificar
los procesos CI/CD basándonos en GIT: Helm, Tekton, Prow, Draft,
monocular, ChartMuseum, Nexus, etc.
Jenkins X flow diagram
Jenkins X flow diagram
LABS TIME!
Q&A
Feel the Geko way
Geko Cloud https://geko.cloud
info@geko.cloud

Más contenido relacionado

La actualidad más candente

Kubernetes Clusters as a Service with Gardener
Kubernetes Clusters as a Service with GardenerKubernetes Clusters as a Service with Gardener
Kubernetes Clusters as a Service with Gardener
QAware GmbH
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
Dennys Hsieh
 
Intro to Azure DevOps
Intro to Azure DevOpsIntro to Azure DevOps
Intro to Azure DevOps
Lorenzo Barbieri
 
Repository Management with JFrog Artifactory
Repository Management with JFrog ArtifactoryRepository Management with JFrog Artifactory
Repository Management with JFrog Artifactory
Stephen Chin
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operations
Mariano Cunietti
 
GitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabGitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLab
Shinu Suresh
 
A prentation on github
A prentation on githubA prentation on github
A prentation on github
Veronica Ojochona Michael (MCP)
 
DevOps: Infrastructure as Code
DevOps: Infrastructure as CodeDevOps: Infrastructure as Code
DevOps: Infrastructure as Code
Julio Aziz Flores Casab
 
Docker Introduction.pdf
Docker Introduction.pdfDocker Introduction.pdf
Docker Introduction.pdf
OKLABS
 
01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
TamalBanerjee16
 
Kubernetes PPT.pptx
Kubernetes PPT.pptxKubernetes PPT.pptx
Kubernetes PPT.pptx
ssuser0cc9131
 
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
Simplilearn
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
EastBanc Tachnologies
 
Edureka-DevOps-Ebook.pdf
Edureka-DevOps-Ebook.pdfEdureka-DevOps-Ebook.pdf
Edureka-DevOps-Ebook.pdf
relekarsushant
 
Kubernetes and container security
Kubernetes and container securityKubernetes and container security
Kubernetes and container security
Volodymyr Shynkar
 
Bitbucket
BitbucketBitbucket
Bitbucket
Okba Mahdjoub
 
Getting Started with Kubernetes
Getting Started with Kubernetes Getting Started with Kubernetes
Getting Started with Kubernetes
VMware Tanzu
 
Continuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event KeynoteContinuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event Keynote
Weaveworks
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket Pipelines
Atlassian
 
Securing Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOpsSecuring Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOps
Amazon Web Services
 

La actualidad más candente (20)

Kubernetes Clusters as a Service with Gardener
Kubernetes Clusters as a Service with GardenerKubernetes Clusters as a Service with Gardener
Kubernetes Clusters as a Service with Gardener
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
 
Intro to Azure DevOps
Intro to Azure DevOpsIntro to Azure DevOps
Intro to Azure DevOps
 
Repository Management with JFrog Artifactory
Repository Management with JFrog ArtifactoryRepository Management with JFrog Artifactory
Repository Management with JFrog Artifactory
 
Gitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operationsGitops: a new paradigm for software defined operations
Gitops: a new paradigm for software defined operations
 
GitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLabGitFlow, SourceTree and GitLab
GitFlow, SourceTree and GitLab
 
A prentation on github
A prentation on githubA prentation on github
A prentation on github
 
DevOps: Infrastructure as Code
DevOps: Infrastructure as CodeDevOps: Infrastructure as Code
DevOps: Infrastructure as Code
 
Docker Introduction.pdf
Docker Introduction.pdfDocker Introduction.pdf
Docker Introduction.pdf
 
01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
 
Kubernetes PPT.pptx
Kubernetes PPT.pptxKubernetes PPT.pptx
Kubernetes PPT.pptx
 
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
What is Puppet? | How Puppet Works? | Puppet Tutorial For Beginners | DevOps ...
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
 
Edureka-DevOps-Ebook.pdf
Edureka-DevOps-Ebook.pdfEdureka-DevOps-Ebook.pdf
Edureka-DevOps-Ebook.pdf
 
Kubernetes and container security
Kubernetes and container securityKubernetes and container security
Kubernetes and container security
 
Bitbucket
BitbucketBitbucket
Bitbucket
 
Getting Started with Kubernetes
Getting Started with Kubernetes Getting Started with Kubernetes
Getting Started with Kubernetes
 
Continuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event KeynoteContinuous Lifecycle London 2018 Event Keynote
Continuous Lifecycle London 2018 Event Keynote
 
Continuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket PipelinesContinuous Delivery in the Cloud with Bitbucket Pipelines
Continuous Delivery in the Cloud with Bitbucket Pipelines
 
Securing Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOpsSecuring Systems at Cloud Scale with DevSecOps
Securing Systems at Cloud Scale with DevSecOps
 

Similar a Git Flow y GitOps

DevOps: una breve introducción
DevOps: una breve introducciónDevOps: una breve introducción
DevOps: una breve introducción
Christian Rodriguez
 
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015 Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
César Hernández
 
Replacing SVN with Git for managers
Replacing SVN with Git for managersReplacing SVN with Git for managers
Replacing SVN with Git for managers
Gustavo Alejandro Vargas Tena
 
Dev ops with Data
Dev ops with DataDev ops with Data
Dev ops with Data
nnakasone
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
Hugo Gilmar Erazo
 
Devops meetup 10 diciembre 2014
Devops meetup 10 diciembre 2014 Devops meetup 10 diciembre 2014
Devops meetup 10 diciembre 2014
Eduardo Diaz
 
El equipo de integracion de Moodle HQ es tu muy mejor amigo
El equipo de integracion de Moodle HQ es tu muy mejor amigoEl equipo de integracion de Moodle HQ es tu muy mejor amigo
El equipo de integracion de Moodle HQ es tu muy mejor amigo
David Monllaó
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
avanttic Consultoría Tecnológica
 
Grails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - SistemasGrails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - Sistemas
Carlos Camacho
 
Construyendo en serie
Construyendo en serieConstruyendo en serie
Construyendo en serie
BoletiaPresentaciones
 
JS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World ExampleJS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World Example
SUGES (SharePoint Users Group España)
 
Global Azure Devops Bootcamp 2019 => Avengers EndGame
Global Azure Devops Bootcamp 2019 => Avengers EndGameGlobal Azure Devops Bootcamp 2019 => Avengers EndGame
Global Azure Devops Bootcamp 2019 => Avengers EndGame
Adrian Diaz Cervera
 
IDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizadosIDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizados
George Navarro Gomez
 
Devops meetup 21 de Junio 2017
Devops meetup 21 de Junio 2017Devops meetup 21 de Junio 2017
Devops meetup 21 de Junio 2017
Eduardo Diaz
 
ALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas PrácticasALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas Prácticas
Rodrigo Corral
 
Data Ops
Data OpsData Ops
Data Ops
nnakasone
 
Frameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web GrailsFrameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web Grails
Esteban Saavedra
 
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
Bootcamp   gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...Bootcamp   gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
Oliver Fierro
 
¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?
Gerónimo Di Pierro
 
informe tecnico herramienta de vesionamiento.docx....
informe tecnico herramienta de vesionamiento.docx....informe tecnico herramienta de vesionamiento.docx....
informe tecnico herramienta de vesionamiento.docx....
Yisel56
 

Similar a Git Flow y GitOps (20)

DevOps: una breve introducción
DevOps: una breve introducciónDevOps: una breve introducción
DevOps: una breve introducción
 
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015 Mejorando la productividad en proyectos java EE con  CI y CD - OTN 2015
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015
 
Replacing SVN with Git for managers
Replacing SVN with Git for managersReplacing SVN with Git for managers
Replacing SVN with Git for managers
 
Dev ops with Data
Dev ops with DataDev ops with Data
Dev ops with Data
 
Control de versiones utilizando Git
Control de versiones utilizando GitControl de versiones utilizando Git
Control de versiones utilizando Git
 
Devops meetup 10 diciembre 2014
Devops meetup 10 diciembre 2014 Devops meetup 10 diciembre 2014
Devops meetup 10 diciembre 2014
 
El equipo de integracion de Moodle HQ es tu muy mejor amigo
El equipo de integracion de Moodle HQ es tu muy mejor amigoEl equipo de integracion de Moodle HQ es tu muy mejor amigo
El equipo de integracion de Moodle HQ es tu muy mejor amigo
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
 
Grails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - SistemasGrails 2013 - PUCMM - Santiago - Sistemas
Grails 2013 - PUCMM - Santiago - Sistemas
 
Construyendo en serie
Construyendo en serieConstruyendo en serie
Construyendo en serie
 
JS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World ExampleJS Patterns Applied to a Real World Example
JS Patterns Applied to a Real World Example
 
Global Azure Devops Bootcamp 2019 => Avengers EndGame
Global Azure Devops Bootcamp 2019 => Avengers EndGameGlobal Azure Devops Bootcamp 2019 => Avengers EndGame
Global Azure Devops Bootcamp 2019 => Avengers EndGame
 
IDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizadosIDEs y Frameworks mas utilizados
IDEs y Frameworks mas utilizados
 
Devops meetup 21 de Junio 2017
Devops meetup 21 de Junio 2017Devops meetup 21 de Junio 2017
Devops meetup 21 de Junio 2017
 
ALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas PrácticasALM09 - Scrum, Visual Studio y Buenas Prácticas
ALM09 - Scrum, Visual Studio y Buenas Prácticas
 
Data Ops
Data OpsData Ops
Data Ops
 
Frameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web GrailsFrameworks de Desarrollo Web Grails
Frameworks de Desarrollo Web Grails
 
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
Bootcamp   gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...Bootcamp   gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
 
¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?¿Cómo elegir tu workflow de Git?
¿Cómo elegir tu workflow de Git?
 
informe tecnico herramienta de vesionamiento.docx....
informe tecnico herramienta de vesionamiento.docx....informe tecnico herramienta de vesionamiento.docx....
informe tecnico herramienta de vesionamiento.docx....
 

Último

380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
380378757-velocidades-maximas-y-minimas-en-los-canales.pdf380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
DiegoAlexanderChecaG
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
jemifermelgarejoaran1
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
micoltadaniel2024
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
brandonsinael
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
elsanti003
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
FantasticVideo1
 
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
KarinToledo2
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
JuanCarlos695207
 
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
AE  34 Serie de sobrecargas aisladas_240429_172040.pdfAE  34 Serie de sobrecargas aisladas_240429_172040.pdf
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
sebastianpech108
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
DanielaLoaeza5
 
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIAMETODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
LuisCiriacoMolina
 
Sistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisiónSistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisión
MichaelLpezOrtiz
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
taniarivera1015tvr
 
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdfMETRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
Augusto César Dávila Callupe
 
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdfEXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
hugodennis88
 
Dosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizadaDosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizada
pipex55
 
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptx
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptxEquipo 4. Mezclado de Polímeros quimica de polimeros.pptx
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptx
angiepalacios6170
 
Infografia de operaciones basicas de la construccion.pdf
Infografia de operaciones basicas de la construccion.pdfInfografia de operaciones basicas de la construccion.pdf
Infografia de operaciones basicas de la construccion.pdf
DanielMelndez19
 
Focos SSO Fin de Semana del 31 MAYO A al 02 de JUNIO de 2024.pdf
Focos SSO Fin de Semana del 31 MAYO A  al 02 de JUNIO  de 2024.pdfFocos SSO Fin de Semana del 31 MAYO A  al 02 de JUNIO  de 2024.pdf
Focos SSO Fin de Semana del 31 MAYO A al 02 de JUNIO de 2024.pdf
PatoLokooGuevara
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
FernandoRodrigoEscal
 

Último (20)

380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
380378757-velocidades-maximas-y-minimas-en-los-canales.pdf380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
380378757-velocidades-maximas-y-minimas-en-los-canales.pdf
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
 
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOSSISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
SISTEMA AUTOMATIZADO DE LIMPIEZA PARA ACUARIOS
 
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptxPRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
PRES 3. METROLOGÍA DE GASES Y RADIACIONES IONIZANTES.pptx
 
Aletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdfAletas de transferencia de calor o superficies extendidas dylan.pdf
Aletas de transferencia de calor o superficies extendidas dylan.pdf
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
 
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
9 Lección perro.pptxcvBWRFWBCCCCCCCCCCCCCCTEN
 
Calculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajosCalculo-de-Camaras-Frigorificas.pdf para trabajos
Calculo-de-Camaras-Frigorificas.pdf para trabajos
 
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
AE  34 Serie de sobrecargas aisladas_240429_172040.pdfAE  34 Serie de sobrecargas aisladas_240429_172040.pdf
AE 34 Serie de sobrecargas aisladas_240429_172040.pdf
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
 
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIAMETODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
METODOLOGIA DE TRAZO Y REPLANTEO EN TOPOGRAFIA
 
Sistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisiónSistemas eléctricos de potencia y transmisión
Sistemas eléctricos de potencia y transmisión
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
 
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdfMETRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
METRADOS_Y_PRESUPUESTO_EN_SISTEMA_DRYWALL_24-05.pdf
 
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdfEXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
EXPOSICIÓN NTP IEC 60364-1 - Orlando Chávez Chacaltana.pdf
 
Dosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizadaDosificacion de hormigon NCH 170 actualizada
Dosificacion de hormigon NCH 170 actualizada
 
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptx
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptxEquipo 4. Mezclado de Polímeros quimica de polimeros.pptx
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptx
 
Infografia de operaciones basicas de la construccion.pdf
Infografia de operaciones basicas de la construccion.pdfInfografia de operaciones basicas de la construccion.pdf
Infografia de operaciones basicas de la construccion.pdf
 
Focos SSO Fin de Semana del 31 MAYO A al 02 de JUNIO de 2024.pdf
Focos SSO Fin de Semana del 31 MAYO A  al 02 de JUNIO  de 2024.pdfFocos SSO Fin de Semana del 31 MAYO A  al 02 de JUNIO  de 2024.pdf
Focos SSO Fin de Semana del 31 MAYO A al 02 de JUNIO de 2024.pdf
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
 

Git Flow y GitOps

  • 1. GitFlow - DevOps + Jenkins X Demo
  • 2. Agenda ● Qué es GitFlow ○ Dónde y cuándo aplicarlo? ○ Ventajas e inconvenientes ○ “Reglas del juego” ○ Sintiendo el “flow” ● Cómo DevOps se adapta a GitFlow ● Jenkins X - LABS ● Q&A
  • 3. Hello World - $whoami Tech Lead, Senior DevOps, Speaker, Technical Coach, AWS certified and Internet Infrastructure Specialist ● CEO at Geko Cloud ● Vueling ● Privalia ● Wallapop ● Emagister ● ... https://www.linkedin.com/in/joseluissanchez/ https://geko.cloud
  • 4. Qué es GitFlow ● Basado en GIT- sistema de control de versiones más utilizado en desarrollo. ● Se basa en un conjunto de prácticas y flujos que aportan control y evitan conflictos en el proceso de desarrollos complejos. ● Todo gira entorno al control y gestión de ramas intermedias temporales, fijas y sus migraciones y fusiones. ● Integración continua que aporta un marco de trabajo definido entre todos los equipos que participan del desarrollo de un mismo producto (repo). ● Plataforma de plugins que nos ayuda en la CLI para crear y gestionar el ecosistema
  • 5. Dónde y cuándo aplicarlo? ● Se recomienda aplicarlo en ○ Entornos semi complejos y complejos de desarrollo ○ Plataforma basada en microservicios con repos independientes ○ Proyectos OpenSource ○ Proyectos single repo muy contributivos ○ Equipos de + 2 personas ○ Proyectos que utilicen Agile framework ○ Proyectos que quieran utilizar mecanismos de test intermedios y unitarios con GitOps ● No se recomienda en: ○ Proyectos monolíticos ○ Proyectos con 2 o menos desarrolladores ○ Proyectos que no desarrollan funcionalidades de forma independiente ○ Proyectos con personal que desconozca el método y no tenga tiempo MVP
  • 6. Ventajas 1. Se adapta al formato de “Sprint” basado en metodologías ágiles entregando de forma continua con CI/CD ya que el entregable es una RELEASE. 2. Evita conflictos entre ramas 3. Protege el estado y fiabilidad de la rama master 4. Mejora la trazabilidad del código 5. Facilita la cooperación colectiva creando ramas por feature 6. El concepto de hotfix agiliza resoluciones de problemas en entornos reales
  • 7. Desventajas 1. Es primordial que el equipo de desarrollo y devops conozcan el método y apliquen los flujos y reglas. 2. Agrega complejidad el proceso y pasos intermedios 3. Todo gira alrededor del concepto release 4. Es recomendable crear entornos intermedios temporales 5. Complica el entorno de integración 6. Debemos tener personas que en momentos de conflictos tengan la capacidad de coordinar conflictos y/o dependencias y conozcan los plugins de git flow. 7. Es recomendable utilizar herramientas complejas y de testing pre integración que garanticen y den visibilidad del estado de las migraciones entre ramas. 8. Es preciso usar herramientas de los repos como PR para mejorar la parte contributiva
  • 8. Reglas del juego Deben existir dos ramas principales: ● master → eje de la verdad ● develop → eje del desarrollo GitFlow INIT --> prefijos para las ramas auxiliares: ● feature/ ● release/ ● hotfix/ ● bugfix/
  • 9.
  • 11. Git Flow CLI $ brew install git-flow-avh $ apt-get install git-flow psst! JL… start demo!
  • 13. Cómo DevOps Se adapta a GitFlow? Conjunto de herramientas y prácticas basadas en automatismos centralizadas en el eje del desarrollo contínuo: ● Single point of truth = GIT ● Procesos automáticos disparados por eventos de Git (merge, finish feature, PR...) ● Gestión de entornos automáticos y estáticos ● Automatización flujos con aprobación por QA ● Definición de artefactos y entregables inmutables ● Adaptar pipelines aisladas para trabajar de forma coordinada con los procesos CI/CD GIT OPS! TO THE RESCUE!
  • 14. Cómo DevOps Se adapta a GitFlow?
  • 15. Cómo GitOps Se adapta a GitFlow? ● Para todo DevOps es primordial entender a la perfección el ciclo de desarrollo de su empresa para mejorarlo y automatizarlo. ● Con la llegada de los contenedores docker, los flujos de desarrollo han evolucionando permitiendo testear de forma segura el comportamiento de un producto sin que existan diferencias entre entornos. ● No existe un modelo de GitOps único y en cada caso existe una adaptación. GIT es el eje de unión entre desarrollo y operaciones. ● Es primordial poder testear fases de calidad y versionar la infraestructura con entregables concretos que permita portar un artefacto desde un desarrollador hasta producción.
  • 16. Desafíos de GITOPS? ● Identificar entornos (pre/prod/stag/devel...) ● Identificar hooks y eventos para automatizar ● Definir herramientas complejas con entornos dinámicos ● Los flujos han de seguir siempre el mismo patrón ● Orientar entornos dinámicos en base a PR ● Es preciso ir de la mano de QA para determinar aprobaciones manuales para el paso a producción ● Definir métodos de deployment (blue/green/canary) ● Definir rollbacks y procedimientos ● Determinar procesos de DB migrations ● ...
  • 17. Cómo DevOps Se adapta a GitFlow? Rama Entorno Feature - PR Entorno volátil Develop Integración Release Staging Master Prod
  • 19. Jenkins X ● Como dice su creador: ‘open source opinionated way to do continuous delivery with Kubernetes, natively’. ● Jenkins X permite desplegar las aplicaciones en un ecosistema Kubernetes. Usa las mejores prácticas de DevOps y mejora la calidad y velocidad de CI/CD. ● Ejecuta un set de herramientas para cumplir un objetivos: simplificar los procesos CI/CD basándonos en GIT: Helm, Tekton, Prow, Draft, monocular, ChartMuseum, Nexus, etc.
  • 20. Jenkins X flow diagram
  • 21. Jenkins X flow diagram
  • 23. Q&A
  • 24. Feel the Geko way Geko Cloud https://geko.cloud info@geko.cloud