SlideShare a Scribd company logo
1 of 25
DevOps
Más allá de
“Botón derecho >
Publicar”
#FourSessions
Ángel García
Ángel García
@angel_g_santos
Senior Developer
agarcia@pasiona.com
huorswords@gmail.com
@
foto
silueta
DevOps
DevOps
DevOps
DevOps
Etapas
DevOps
Continuous Integration
¿Qué es?
Continuous Integration (CI) is a development practice that
requires developers to integrate code into a shared
repository several times a day. Each check-in is then verified
by an automated build, allowing teams to detect problems
early.
https://www.thoughtworks.com/es/continuous-integration
Continuous Delivery
¿Qué es?
Through reliable, low-risk releases, Continuous Delivery
makes it possible to continuously adapt software in line
with user feedback, shifts in the market and changes to
business strategy. Test, support, development and
operations work together as one delivery team to
automate and streamline the build, test and release
process
https://www.thoughtworks.com/continuous-delivery
I choose you!
• Git
• GitFlow
¿Por qué?
¿Por qué?
• Visual Studio Team Services
• Integración out-of-the-box con Git
• Integración out-of-the-box con Azure
• SCV, Build, Release, Deploy management
• Azure
• WebApps
• Máquinas virtuales
• Bases de datos
• Infraestructura
• Storage
• …
• Y porque es de Microsoft
¿Por qué?
Visual Studio Dev Essentials
https://www.visualstudio.com/es/dev-essentials/
Continuous Integration
Estrategias CI - Build
• Planificada (… y nightlies)
• Inmediata
• Gated Commit / Check in
• Manual
• La estrategia de branching determina
qué ramas deben ser compiladas
mediante una build automática.
• En GitFlow, tiene sentido tener al menos
dos entornos automatizados: master y
develop
Estrategia de branching - GitFlow
Continuous Integration
DEMO
Continuous Delivery
Deploy
• WebApp
• Nuget
• Store
• …
Continuous Delivery
Estrategias CD - Release
• Planificada (… y nightlies)
• Inmediata
• Manual
DEMO
DevOps
Code Build Test Release Deploy
Resumen
DevOps
Code Build Test Release Deploy
Resumen
DevOps
Code Build Test Release Deploy
Resumen
Ángel García
@angel_g_santos
agarcia@pasiona.com
huorswords@gmail.com
@
foto
silueta
Q&A
GRACIAS

More Related Content

What's hot

Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online
Moataz Nabil
 
DevOps and Continuous Delivery with Visual Studio 2015 and VSTS
DevOps and Continuous Delivery with Visual Studio 2015 and VSTSDevOps and Continuous Delivery with Visual Studio 2015 and VSTS
DevOps and Continuous Delivery with Visual Studio 2015 and VSTS
Solidify
 

What's hot (20)

Deploying more technology to shift from agility to anti-fragility
Deploying more technology to shift from agility to anti-fragilityDeploying more technology to shift from agility to anti-fragility
Deploying more technology to shift from agility to anti-fragility
 
Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online Continuous Delivery with Visual Studio Online
Continuous Delivery with Visual Studio Online
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Introducing DevOps
Introducing DevOpsIntroducing DevOps
Introducing DevOps
 
Devops course
Devops courseDevops course
Devops course
 
Best practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on SalesforceBest practices for implementing CI/CD on Salesforce
Best practices for implementing CI/CD on Salesforce
 
CI/CD (DevOps) 101
CI/CD (DevOps) 101CI/CD (DevOps) 101
CI/CD (DevOps) 101
 
CI/CD Best Practices for Your DevOps Journey
CI/CD Best  Practices for Your DevOps JourneyCI/CD Best  Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
 
Anatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery PipelineAnatomy of a Continuous Delivery Pipeline
Anatomy of a Continuous Delivery Pipeline
 
DevOps and Continuous Delivery with Visual Studio 2015 and VSTS
DevOps and Continuous Delivery with Visual Studio 2015 and VSTSDevOps and Continuous Delivery with Visual Studio 2015 and VSTS
DevOps and Continuous Delivery with Visual Studio 2015 and VSTS
 
Moving to Continuous Delivery with XebiaLabs XL Release
Moving to Continuous Delivery with XebiaLabs XL ReleaseMoving to Continuous Delivery with XebiaLabs XL Release
Moving to Continuous Delivery with XebiaLabs XL Release
 
Impact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team PerformanceImpact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team Performance
 
continuousphp
continuousphpcontinuousphp
continuousphp
 
Salesforce & GitLab Integration for Next-gen DevOps with CEPTES
Salesforce & GitLab Integration for Next-gen DevOps with CEPTESSalesforce & GitLab Integration for Next-gen DevOps with CEPTES
Salesforce & GitLab Integration for Next-gen DevOps with CEPTES
 
CI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality Engineering
 
My Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to PlatformsMy Personal DevOps Journey: From Pipelines to Platforms
My Personal DevOps Journey: From Pipelines to Platforms
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
CircleCI and XebiaLabs: A Winning Combination for Seamless, Scalable Continuo...
CircleCI and XebiaLabs: A Winning Combination for Seamless, Scalable Continuo...CircleCI and XebiaLabs: A Winning Combination for Seamless, Scalable Continuo...
CircleCI and XebiaLabs: A Winning Combination for Seamless, Scalable Continuo...
 

Viewers also liked

Beyond Continuous Delivery at ThoughtWorks North America Away Day
Beyond Continuous Delivery at ThoughtWorks North America Away DayBeyond Continuous Delivery at ThoughtWorks North America Away Day
Beyond Continuous Delivery at ThoughtWorks North America Away Day
Chris Hilton
 

Viewers also liked (20)

Primer vistazo al computer vision | 4Sessions Feb17
Primer vistazo al computer vision | 4Sessions Feb17Primer vistazo al computer vision | 4Sessions Feb17
Primer vistazo al computer vision | 4Sessions Feb17
 
Arduino para seres humanos | 4Sessions Feb17
Arduino para seres humanos | 4Sessions Feb17Arduino para seres humanos | 4Sessions Feb17
Arduino para seres humanos | 4Sessions Feb17
 
The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17The big ball of mud | 4Sessions Feb17
The big ball of mud | 4Sessions Feb17
 
Estrategia de marketing digital
Estrategia de marketing digitalEstrategia de marketing digital
Estrategia de marketing digital
 
Our continuous delivery journey
Our continuous delivery journeyOur continuous delivery journey
Our continuous delivery journey
 
Beyond Continuous Delivery at ThoughtWorks North America Away Day
Beyond Continuous Delivery at ThoughtWorks North America Away DayBeyond Continuous Delivery at ThoughtWorks North America Away Day
Beyond Continuous Delivery at ThoughtWorks North America Away Day
 
The big ball of mud!
The big ball of mud!The big ball of mud!
The big ball of mud!
 
General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014
 
We thought we were doing continuous delivery and then...
We thought we were doing continuous delivery and then... We thought we were doing continuous delivery and then...
We thought we were doing continuous delivery and then...
 
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
DevOps and Continuous Delivery Reference Architectures (including Nexus and o...
 
Convenioanti t-rex-p-p-2016 - recargado
Convenioanti t-rex-p-p-2016 - recargadoConvenioanti t-rex-p-p-2016 - recargado
Convenioanti t-rex-p-p-2016 - recargado
 
Convention of security presidential homage zero listo
Convention of security presidential homage zero listoConvention of security presidential homage zero listo
Convention of security presidential homage zero listo
 
Natural Disasters and the Law: The Aftermath of Superstorm Sandy and Its Imp...
Natural Disasters and the Law:  The Aftermath of Superstorm Sandy and Its Imp...Natural Disasters and the Law:  The Aftermath of Superstorm Sandy and Its Imp...
Natural Disasters and the Law: The Aftermath of Superstorm Sandy and Its Imp...
 
1.4.1 Интервью с продукт-менеджером компании ДКС Антоном Дьяконовым
1.4.1 Интервью с продукт-менеджером компании ДКС Антоном Дьяконовым1.4.1 Интервью с продукт-менеджером компании ДКС Антоном Дьяконовым
1.4.1 Интервью с продукт-менеджером компании ДКС Антоном Дьяконовым
 
Thoughts
ThoughtsThoughts
Thoughts
 
La constituyente economica
La constituyente economicaLa constituyente economica
La constituyente economica
 
EL AYUNTAMIENTO SE SUMA AL PARO INTERNACIONAL DE MUJERES Y A LOS 5 MINUTOS SI...
EL AYUNTAMIENTO SE SUMA AL PARO INTERNACIONAL DE MUJERES Y A LOS 5 MINUTOS SI...EL AYUNTAMIENTO SE SUMA AL PARO INTERNACIONAL DE MUJERES Y A LOS 5 MINUTOS SI...
EL AYUNTAMIENTO SE SUMA AL PARO INTERNACIONAL DE MUJERES Y A LOS 5 MINUTOS SI...
 
Cinetransformer - Brochure ENG 2016
Cinetransformer - Brochure ENG 2016Cinetransformer - Brochure ENG 2016
Cinetransformer - Brochure ENG 2016
 
18 Travel Goals Everyone Should Have
18 Travel Goals Everyone Should Have18 Travel Goals Everyone Should Have
18 Travel Goals Everyone Should Have
 
Diálogos transdisciplinarios en la si nº 2 identidades
Diálogos transdisciplinarios en la si nº 2 identidadesDiálogos transdisciplinarios en la si nº 2 identidades
Diálogos transdisciplinarios en la si nº 2 identidades
 

Similar to DevOps - Más allá del botón derecho > publicar | 4Sessions Feb17

Top 20 DevOps Interview Questions & Answers in 2023.pptx
Top 20 DevOps Interview Questions & Answers in 2023.pptxTop 20 DevOps Interview Questions & Answers in 2023.pptx
Top 20 DevOps Interview Questions & Answers in 2023.pptx
AnanthReddy38
 

Similar to DevOps - Más allá del botón derecho > publicar | 4Sessions Feb17 (20)

What Is DevOps & How Does It Works.pdf
What Is DevOps & How Does It Works.pdfWhat Is DevOps & How Does It Works.pdf
What Is DevOps & How Does It Works.pdf
 
An Ultimate 10 Point DevOps Checklist for your Organization.pdf
An Ultimate 10 Point DevOps Checklist for your Organization.pdfAn Ultimate 10 Point DevOps Checklist for your Organization.pdf
An Ultimate 10 Point DevOps Checklist for your Organization.pdf
 
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree	Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
Building an In-House DevOps Service Platform for Mobility Solutions | Mindtree
 
Bn1006 demo ppt devops
Bn1006 demo ppt devopsBn1006 demo ppt devops
Bn1006 demo ppt devops
 
The DevOps Experience
The DevOps ExperienceThe DevOps Experience
The DevOps Experience
 
CICD Mule
CICD Mule CICD Mule
CICD Mule
 
Exploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and ToolsExploring the Phases of DevOps Lifecycle: Case Studies and Tools
Exploring the Phases of DevOps Lifecycle: Case Studies and Tools
 
Top 20 DevOps Interview Questions & Answers in 2023.pptx
Top 20 DevOps Interview Questions & Answers in 2023.pptxTop 20 DevOps Interview Questions & Answers in 2023.pptx
Top 20 DevOps Interview Questions & Answers in 2023.pptx
 
How Can DevOps Strategy Boost Your Business Productivity?.pdf
How Can DevOps Strategy Boost Your Business Productivity?.pdfHow Can DevOps Strategy Boost Your Business Productivity?.pdf
How Can DevOps Strategy Boost Your Business Productivity?.pdf
 
The Benefits of continuous integration in Automation testing.pptx
The Benefits of continuous integration in Automation testing.pptxThe Benefits of continuous integration in Automation testing.pptx
The Benefits of continuous integration in Automation testing.pptx
 
AICT_presentation.pptx
AICT_presentation.pptxAICT_presentation.pptx
AICT_presentation.pptx
 
What Is DevOps?
What Is DevOps?What Is DevOps?
What Is DevOps?
 
DevOps in Software Development | Streamlining Processes for Agile Success
DevOps in Software Development | Streamlining Processes for Agile SuccessDevOps in Software Development | Streamlining Processes for Agile Success
DevOps in Software Development | Streamlining Processes for Agile Success
 
What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery What is Continuous Integration and Continuous Delivery
What is Continuous Integration and Continuous Delivery
 
DevOps in Software Development | Streamlining Processes for Agile Success
DevOps in Software Development | Streamlining Processes for Agile SuccessDevOps in Software Development | Streamlining Processes for Agile Success
DevOps in Software Development | Streamlining Processes for Agile Success
 
Devops interview-questions-PDF
Devops interview-questions-PDFDevops interview-questions-PDF
Devops interview-questions-PDF
 
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValueDevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
DevOps Continuous Integration & Delivery - A Whitepaper by RapidValue
 
2.What is a DevOps Environment and How Does it Function_.pdf
2.What is a DevOps Environment and How Does it Function_.pdf2.What is a DevOps Environment and How Does it Function_.pdf
2.What is a DevOps Environment and How Does it Function_.pdf
 
Comprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdfComprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdf
 
What is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdfWhat is DevOps Services_ Tools and Benefits.pdf
What is DevOps Services_ Tools and Benefits.pdf
 

More from [T]echdencias

More from [T]echdencias (20)

Transformacion digital, formacion y empleo
Transformacion digital, formacion y empleoTransformacion digital, formacion y empleo
Transformacion digital, formacion y empleo
 
I get the Power BI
I get the Power BII get the Power BI
I get the Power BI
 
Selenium + docker
Selenium + dockerSelenium + docker
Selenium + docker
 
React & Redux for noobs
React & Redux for noobsReact & Redux for noobs
React & Redux for noobs
 
Azure Logic Apps
Azure Logic Apps Azure Logic Apps
Azure Logic Apps
 
¡Bzz...! ¡Tienes una alerta!
¡Bzz...! ¡Tienes una alerta!¡Bzz...! ¡Tienes una alerta!
¡Bzz...! ¡Tienes una alerta!
 
Windows Template Studio by Martin Vega
Windows Template Studio by Martin Vega Windows Template Studio by Martin Vega
Windows Template Studio by Martin Vega
 
Event Grid, colega que pasa en mi nube?
Event Grid, colega que pasa en mi nube?Event Grid, colega que pasa en mi nube?
Event Grid, colega que pasa en mi nube?
 
#4Sessions - Azure Alerts - ¿Has probado a reiniciar?
#4Sessions - Azure Alerts - ¿Has probado a reiniciar?#4Sessions - Azure Alerts - ¿Has probado a reiniciar?
#4Sessions - Azure Alerts - ¿Has probado a reiniciar?
 
Seamos 'Hipster', pensemos en ServerLess - Manu Delgado Díaz
Seamos 'Hipster', pensemos en ServerLess - Manu Delgado DíazSeamos 'Hipster', pensemos en ServerLess - Manu Delgado Díaz
Seamos 'Hipster', pensemos en ServerLess - Manu Delgado Díaz
 
[Codemotion Madrid 2017] Como hacer una presentacion y no matar a la audiencia
[Codemotion Madrid 2017] Como hacer una presentacion y no matar a la audiencia[Codemotion Madrid 2017] Como hacer una presentacion y no matar a la audiencia
[Codemotion Madrid 2017] Como hacer una presentacion y no matar a la audiencia
 
Power Users - Nueva experiencia Office 365
Power Users - Nueva experiencia Office 365 Power Users - Nueva experiencia Office 365
Power Users - Nueva experiencia Office 365
 
Node.js + Azure, o como mezclar agua con aceite
Node.js + Azure, o como mezclar agua con aceite Node.js + Azure, o como mezclar agua con aceite
Node.js + Azure, o como mezclar agua con aceite
 
Testear videojuegos con Unity3D
Testear videojuegos con Unity3D Testear videojuegos con Unity3D
Testear videojuegos con Unity3D
 
2D zombies survival game | Codemotion 2016
2D zombies survival game | Codemotion 20162D zombies survival game | Codemotion 2016
2D zombies survival game | Codemotion 2016
 
Application Insight + stream analytics + Power BI
Application Insight + stream analytics + Power BIApplication Insight + stream analytics + Power BI
Application Insight + stream analytics + Power BI
 
Botón derecho --> publicar
Botón derecho --> publicarBotón derecho --> publicar
Botón derecho --> publicar
 
Azure Search
Azure SearchAzure Search
Azure Search
 
Asuuure ya estoy en casa
Asuuure ya estoy en casaAsuuure ya estoy en casa
Asuuure ya estoy en casa
 
Azure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BIAzure insight + Streaming Analytics + Power BI
Azure insight + Streaming Analytics + Power BI
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

DevOps - Más allá del botón derecho > publicar | 4Sessions Feb17

Editor's Notes

  1. ¿DevOps? ¿Alguien sabe que significa esa palabra? ¿A qué me refiero? (click) ¿Quizá a un perfil profesional? (click) ¿Quizá a un concepto muy hipster? (click) No, en realidad, DevOps se refiere a un conjunto de principios, herramientas y procesos. El nombre de DevOps en realidad es la contracción de los términos Development y Operations. Pretende definir...
  2. ¿DevOps? ¿Alguien sabe que significa esa palabra? ¿A qué me refiero? (click) ¿Quizá a un perfil profesional? (click) ¿Quizá a un concepto muy hipster? (click) No, en realidad, DevOps se refiere a un conjunto de principios, herramientas y procesos. El nombre de DevOps en realidad es la contracción de los términos Development y Operations. Pretende definir...
  3. ¿DevOps? ¿Alguien sabe que significa esa palabra? ¿A qué me refiero? (click) ¿Quizá a un perfil profesional? (click) ¿Quizá a un concepto muy hipster? (click) No, en realidad, DevOps se refiere a un conjunto de principios, herramientas y procesos. El nombre de DevOps en realidad es la contracción de los términos Development y Operations. Pretende definir...
  4. ¿DevOps? ¿Alguien sabe que significa esa palabra? ¿A qué me refiero? (click) ¿Quizá a un perfil profesional? (click) ¿Quizá a un concepto muy hipster? (click) No, en realidad, DevOps se refiere a un conjunto de principios, herramientas y procesos. El nombre de DevOps en realidad es la contracción de los términos Development y Operations. Pretende definir...
  5. … un cambio de filosofía a nivel empresarial. Desde el punto de vista de las herramientas que dicha filosofía aporta, podemos clasificar las diferentes etapas de un proceso DevOps en: Planificación Codificación Construcción Pruebas Entrega Despliegue Operación Monitorización En esta charla no quiero explicaros cada una de las etapas de un proceso DevOps, sino que el objetivo es centrarme en aquello que creo que puede aportaros más valor como desarrolladores. Me refiero a los conceptos de Continuous integration y Continuous delivery.
  6. ¿Qué significa Continuous integration? Me gusta especialmente esta descripción que encontré en la web de Thoughtworks. La integración continua es una práctica de desarrollo que requiere que los desarrolladores integren su código en un repositorio compartido varias veces al día. Cada check-in es verificado por una build automática, permitiendo de esta forma a los equipos detector los problemas de forma temprana.
  7. Por otro lado, Continuous Delivery define el proceso mediante el que nuestro producto va a desplegarse y como va a ser explotado una vez desplegado. También he escogido la definición que da Thoughtworks para el concepto. Mediante entregas confiables de bajo riesgo, Continuous Delivery permite adaptar el software mucho más deprisa en función del feedback del usuario final, ante cambios de mercado o ante cambios de estrategia de negocio. Los departamentos de test, Soporte, desarrollo y operaciones trabajan juntos como un único equipo. Que chulo suena todo, ¿verdad?
  8. Para implementar CI + CD, podéis escoger muchísimas herramientas que están ahí y que permiten desde el build automatizado de código hasta el despliegue o monitorización de soluciones de todo tipo. En mi caso, he escogido como escenario de CI + CD: Git Visual Studio Team Services Microsoft Azure
  9. Podría estar horas hablando de por qué Git es mejor que TFS… pero no. Básicamente he escogido Git para la demo porque creo que actualmente es el Sistema de Control de Versiones que la mayor parte del mundo mundial NO corporativo está utilizando. Aunque en su momento la mayor parte del mundo mundial corporativo usaba Visual Source Safe… en fin. Como flow de trabajo, he escogido GitFlow. Esto también da para una charla, pero creo que la mayoría de vosotros habrá oído hablar de ello. No es más que una convención, una estrategia de branching, que asocia de forma semántica cada rama con un estado del código: Master para producción Develop para vNext Feature para la implementación de nuevas funcionalidades Release para la integración (o merge) de desarrollo a producción y Hotfix… bueno… nadie quiere usar Hotfix, pero a veces es necesario.
  10. En el caso de Visual Studio Team Services, porque básicamente tiene todo lo que necesito en un solo lugar y además, es gratis. Todo lo que necesito es: Integración con Git (Jenkins o Team City también lo tienen) Integración con Azure (Jenkins o Team City lo permiten) SCV, Build, Release, Deploy, Management… que para tenerlo todo en una sola herramienta ya tienes que andar combinando un Jira, con un Github, con un Team City, con un… demasiados con un.
  11. ¿Y Azure? Bueno, Azure te da Webapps, máquinas virtuales, bases de datos, infraestructura de red, directorio activo, cloud storage… Bueno, y también porque es de Microsoft y con el programa Visual Studio Dev Essentials os regalan 25$ al mes durante un año para que trasteéis.
  12. Entráis aquí, en ésta URL, os registráis… ponéis la tarjeta de crédito, que os puedo asegurar que no os van a cobrar (si a alguno os cobran no vengáis a reclamar tampoco luego…), y a disfrutar de las ventajas que ofrece.
  13. Retomando un poco el tema de CI, quiero hablaros de los procesos de build. Una build automatizada usando Continuous integration se inicia a través de lo que se conoce como Triggers. Entre muchos de los que, en mi escenario, ofrece VSTS, existen tres muy diferenciados que creo interesante resaltar aquí. Las builds planificadas, son aquellas builds que se ejecutarán pasado un intervalo de tiempo X, o a tal hora por la noche, o los 29 de febrero a las tres de la tarde. Las builds inmediatas son aquellas que se lanzan en cada commit o checkin que hagamos a la rama configurada de nuestro repositorio para dicha build. Esto significa que cada vez que alguien suba algo a, por ejemplo, la rama master, se lanzará una build automática para generar la versión resultante tras los cambios realizados. Se acabaron los “pues en mi máquina compila”, porque el equipo siempre va a trabajar con una compilación de referencia, que es la que tenga el servidor de build. Por último, un tanto olvidadas, pero que dan mucho juego normalmente, son las gated builds. Las gated builds se generan por un gated commit, que no es más que un commit al repositorio que, de manera previa a su inclusión en el repositorio compartido como código consolidado, se le hace la verificación de compilación, pruebas…. De todos y cada uno de los pasos que nuestra build automática tenga definidos, de manera que no aceptemos ese commit si la build no es correcta. Este tipo de gated commits es el siguiente nivel de CI, ya que no sólo detectas los errores pronto… sino que los detectas antes incluso de que se guarden en el servidor. Ni comento la versión manual… acaso alguno de nosotros va a estar ahí, cual monete, encolando builds cada vez que un compañero le avise de que ha subido cambios al repositorio?
  14. Algo importante también es tener claro qué queremos que sea código a integrar. Para un escenario como el mío, en el que mi estrategia de branching es la que marca GitFlow, lo habitual es tener dos builds automáticas: master y develop. Así pues, si integro features nuevas a mi rama de desarrollo, o si genero un hotfix súper urgente para el entorno de producción, la build se generará de forma automática al hacer merge en las ramas principales del repositorio.
  15. Enseñar la aplicación PokeTechs Demostrar que funciona, pero que tiene un bug. Arreglarlo, pero no sincronizar. Explicar cómo se configura una build. Añadir build Elegir Visual Studio Escoger la rama apropiada (master) y seleccionar Continuous integration. En la lista de steps, el Copy Files no hace falta. Eliminarlo. En caso de fallo, el step build requiere de estos parámetros: /p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(build.artifactstagingdirectory)\\“ No lanzar build. El repositorio aún no tiene código en master. Explicar cómo activar un gated-commit. Acceder a Code / Settings / Version Control Seleccionar la rama master Branch Policies Marcar las opciones apropiadas.
  16. Hasta ahora no hemos visto que funcione, pero ya llegamos a eso. Continuous delivery en este caso nos permite desplegar una build correcta en un entorno previamente creado, o en un recurso de red, o en un repositorio nuget, o en la store de turno de Android, iOS o… Windows Phone. En el escenario que hemos visto, desplegaremos una WebApp en azure, que además es una de las más sencillas de configurar.
  17. No quiero pasar a la segunda parte de la demo sin hablar de estrategias CD también. Aunque no os sorprenderá que la lista sea parecida a la de estrategias CI. En realidad, dentro del continuous delivery, es habitual que sea una build la que genere, mediante trigger, una reléase del código compilado. Obviamente la herramienta, en este caso VSTS, te permite lanzar una entrega de forma manual… pero perdería un poco el sentido la palabra Continuous… a menos que alguien esté continuamente lanzando releases a mano.
  18. Ya acabamos… vamos a calmarnoh… que es sábado y hay que irse a comer. Explicar cómo se configura una release. Añadir reléase (desde el menú izquierdo) Seleccionar el Source Apropiado (Prod) Marcar Continuous deployment. Configurar el deploy. Definir la suscripción de Azure Definir la instancia de Azure Desplegar las opciones disponibles, sólo haciendo mención a que hay muchísimas propiedades configurables y que en cada versión nueva salen más. Guardar y dejar el resto por defecto. Sincronizar el código con el repositorio. Mostrar la build automática. Mostrar la reléase automática. Demostrar que el entorno de producción se ha levantado. Enseñar Azure para demostrar que el proceso de deploy también se puede visualizar desde allí.
  19. Y hasta aquí… Hemos visto una pequeña introducción a parte del ciclo de vida y la toolchain de DevOps. Desde cómo almacenamos y compartimos nuestro código fuente mediante Git, cómo compilamos, testeamos y generamos versiones en VSTS y como acabamos deployando el software final en Azure. ¿Creéis que estáis preparados para implementar las prácticas DevOps?
  20. Y hasta aquí… Hemos visto una pequeña introducción a parte del ciclo de vida y la toolchain de DevOps. Desde cómo almacenamos y compartimos nuestro código fuente mediante Git, cómo compilamos, testeamos y generamos versiones en VSTS y como acabamos deployando el software final en Azure. ¿Creéis que estáis preparados para implementar las prácticas DevOps?
  21. Y hasta aquí… Hemos visto una pequeña introducción a parte del ciclo de vida y la toolchain de DevOps. Desde cómo almacenamos y compartimos nuestro código fuente mediante Git, cómo compilamos, testeamos y generamos versiones en VSTS y como acabamos deployando el software final en Azure. ¿Creéis que estáis preparados para implementar las prácticas DevOps?