On The Road towards Continuous Delivery

MyToys Group IT
MyToys Group ITMyToys Group IT
On The Road towards Continuous Delivery
David Lee
Debora Gomez
Victor Rodriguez
Heiko Kahmann
Berlin, 05.04.2017
#myToysIT
Agenda
Dr. David Lee
BSc(Hons) / PhD in Computer Science (Robert Gordon University, Scotland)
Certified Software Architect (Foundation Level)
Working since 2010 for the MyToys Group
Heiko Kahmann
Dipl. Inf., Dipl. Vw (Freie Universität Berlin)
Working since 2015 for the MyToys Group
2015-Present: Software Architect at myToys.de
About The Presenters
Debora Gomez
Master in Electrical Engineering (Carlos III University)
Working since 2016 for the MyToys Tech Lab in Madrid
Victor Rodriguez
Master in Computer Science (Public University of Navarre)
Working since 2016 for the MyToys Tech Lab in Madrid
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Our TechVision: Microservices with a PageAssembler
Microservice
Header
PageAssembler
Configuration &
Service Discovery
Server
Load Balancer
http://www.mytoys.de/nl/success
HTMLRequest
/newsletter/success
david.lee@mytoys.de
PageAssembler
Request
/newsletter/success
PageConfiguration
with Service URLs
Request
myToys.de
Header
HTML
Microservice
Newsletter
Microservice
Footer
Newsletter
DB
david.lee@mytoys.de
Newsletter
HTML
Request
myToys.de
david.lee@mytoys.de
Request
myToys.de
Footer
HTML
Cache
Connecting the Mobile App through a Public API
Public API
Microservice Newsletter
Registration
Newsletter
DB
david.lee@mytoys.de
Request
myToys.de
Request
Newsletter Registration
JSON
JSON
Summary of key components for TechVision
PageAssembler Microservices
Team Split /
Independence / Self-
responsibility
Cloud
Elastic Load Balancing Continuous Delivery
Automatic Documentation Test Driven
Service Discovery
Live Shop Editor
More details…
devblog.mytoys.de
Deploying Microservices in Real Time:
JAR Deployment with a Pipeline in Jenkins 2
Deploying Microservices in Real Time
Instant Messaging Channel for updates
The problems with simple JAR Deployment
Developer Operations
V1.0
JAR
Deploy JAR File please
Deploy Hotfix please
Didn‘t work – had to rollback
V1.0.1
JAR
Didn‘t work – had to rollback
Config Oh and you need to configure this…
Continuous Delivery via Docker
Test Project at a Company Innovation Day:
Developer
Jenkins
Operations
Commit new version
Generate Docker
container
Second version of Jenkins pipeline
Deploying Microservices to Real Time
Developer
Operations
Docker Container
Orchestration
Continuous Delivery
Continuous Deployment
Continuous Delivery Next Steps: Docker Repo
1. Upload Docker Containers into a Docker Repository.
Developer
Docker Container
Continuous Delivery Next Steps: PaaS/OpenShift
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Microservice
Stages Model
Prod
Stage
Integration
Stage
Local
Stage
Prod-dev
Stage
Continuous Delivery
Pipeline
Docker Hub
Payback Case Study
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Vertical Team
Android Developers
QA Engineer
Product owner
Team Lead iOS Developers
Scrum master
Vertical Team
Development Workflow
Let’s take
this cool
feature
?
Ok …
whatever
you want …
There is a
missing
space !!
Developer Code review QA
Development Workflow
?
I can finally
close this
nightmare
QA Developer
Coffee
break
Development Workflow
?Developer QA
Continuous Delivery – Pipeline stages
Build Automation
&
Continuous
Integration
Tests Automation
Deployment
Automation
Continuous Delivery
Orchestrating it all
Continuous Delivery
?Developer Code review QA
Continuous Delivery
?QA
Learnt Lessons
• iOS CI only over a Mac.
• Use match to make your life easier with iOS certificates.
• Jenkins needs to access the user mac keychain.
• Android emulator + docker in a Mac not compatible.
• Genymotion rocks.
• Automate as much as possible the setup of your environment.
Next steps
• Dockerize Jenkins & create more slaves using docker.
• Automatize Android native app deployment in the market.
• Test Rail integration with Appium, Frisby JS, Gatling tests results.
• Monitoring Panel (MS & Apps).
• Execute tests on a device farm.
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Pizza Time !!!
Thanks!!
Agenda
Our Journey towards Continuous Delivery for the Shop Platform
Short Break for Pizza
Interactive Discussion Groups
Review
Our Journey towards Continuous Delivery for the Mobile App
Interactive Discussion Groups (after the break)
1. Experiences with Continuous Delivery in a Mobile
Environment.
2. Experiences with Platform as a Service (PaaS)
3. Experiences with integrating components in a Continuous
Delivery Pipeline.
1 of 34

Recommended

My portfolio 2 by
My portfolio 2 My portfolio 2
My portfolio 2 Raj ch
43 views9 slides
London DevOps Meetup - PaaS as a platform for devops by
London DevOps Meetup - PaaS as a platform for devopsLondon DevOps Meetup - PaaS as a platform for devops
London DevOps Meetup - PaaS as a platform for devopsJeremy Brown
629 views12 slides
Red Hat Forum London 2014 - Delivering Innovation at Speed, A JBoss Perspective by
Red Hat Forum London 2014 - Delivering Innovation at Speed, A JBoss PerspectiveRed Hat Forum London 2014 - Delivering Innovation at Speed, A JBoss Perspective
Red Hat Forum London 2014 - Delivering Innovation at Speed, A JBoss PerspectiveJeremy Brown
693 views27 slides
OpenAPI Generator The Babel Fish of The API World - apidays Live Paris by
OpenAPI Generator The Babel Fish of The API World - apidays Live ParisOpenAPI Generator The Babel Fish of The API World - apidays Live Paris
OpenAPI Generator The Babel Fish of The API World - apidays Live ParisCliffano Subagio
134 views41 slides
CI/CD (DevOps) 101 by
CI/CD (DevOps) 101CI/CD (DevOps) 101
CI/CD (DevOps) 101Hazzim Anaya
1.2K views44 slides
Impact of CD, Clean Code, ... on Team Performance by
Impact of CD, Clean Code, ... on Team PerformanceImpact of CD, Clean Code, ... on Team Performance
Impact of CD, Clean Code, ... on Team PerformanceFredrik Wendt
1.1K views63 slides

More Related Content

What's hot

Software development in the modern age by
Software development in the modern ageSoftware development in the modern age
Software development in the modern ageRoy Wasse
287 views38 slides
Salesforce CI/CD - A strategy for success by
Salesforce CI/CD - A strategy for successSalesforce CI/CD - A strategy for success
Salesforce CI/CD - A strategy for successYassine ELQANDILI ☁
1K views17 slides
Dockercon 2015 - Faster Cheaper Safer by
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper SaferAdrian Cockcroft
6.9K views52 slides
Microservices pattern language (microxchg microxchg2016) by
Microservices pattern language (microxchg microxchg2016)Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)Chris Richardson
11K views76 slides
Selling the Open-Source Philosophy - DrupalCon Latin America by
Selling the Open-Source Philosophy - DrupalCon Latin AmericaSelling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin AmericaLucas Arruda
363 views46 slides
Selling the open-source philosophy - DrupalCon Latin America 2015 by
Selling the open-source philosophy - DrupalCon Latin America 2015Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015Handrus Nogueira
261 views46 slides

What's hot(19)

Software development in the modern age by Roy Wasse
Software development in the modern ageSoftware development in the modern age
Software development in the modern age
Roy Wasse287 views
Dockercon 2015 - Faster Cheaper Safer by Adrian Cockcroft
Dockercon 2015 - Faster Cheaper SaferDockercon 2015 - Faster Cheaper Safer
Dockercon 2015 - Faster Cheaper Safer
Adrian Cockcroft6.9K views
Microservices pattern language (microxchg microxchg2016) by Chris Richardson
Microservices pattern language (microxchg microxchg2016)Microservices pattern language (microxchg microxchg2016)
Microservices pattern language (microxchg microxchg2016)
Chris Richardson11K views
Selling the Open-Source Philosophy - DrupalCon Latin America by Lucas Arruda
Selling the Open-Source Philosophy - DrupalCon Latin AmericaSelling the Open-Source Philosophy - DrupalCon Latin America
Selling the Open-Source Philosophy - DrupalCon Latin America
Lucas Arruda363 views
Selling the open-source philosophy - DrupalCon Latin America 2015 by Handrus Nogueira
Selling the open-source philosophy - DrupalCon Latin America 2015Selling the open-source philosophy - DrupalCon Latin America 2015
Selling the open-source philosophy - DrupalCon Latin America 2015
Handrus Nogueira261 views
DevOps Patterns to Enable Success in Microservices by Rich Mills
DevOps Patterns to Enable Success in MicroservicesDevOps Patterns to Enable Success in Microservices
DevOps Patterns to Enable Success in Microservices
Rich Mills139 views
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L... by Anders Lundsgård
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
BizDevOps Transformation, Metrics and Microservices at Scania, June 2017 in L...
Anders Lundsgård859 views
Cloud Native Cost Optimization UCC by Adrian Cockcroft
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCC
Adrian Cockcroft7.9K views
Transform Digital Business with DevOps by Daniel Oh
Transform Digital Business with DevOpsTransform Digital Business with DevOps
Transform Digital Business with DevOps
Daniel Oh551 views
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe... by apidays
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays LIVE Paris 2021 - API design is where culture and tech meet each othe...
apidays87 views
Chega de receita de bolo: gerenciando infraestrutura como código by Igor Abade
Chega de receita de bolo: gerenciando infraestrutura como códigoChega de receita de bolo: gerenciando infraestrutura como código
Chega de receita de bolo: gerenciando infraestrutura como código
Igor Abade462 views
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness by BMK Lakshminarayanan
How to Avoid Cloud Confusion, DevOps dilemma, Microservice MadnessHow to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
How to Avoid Cloud Confusion, DevOps dilemma, Microservice Madness
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida by apidays
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays188 views
Advancing Your API Strategy in an Infrastructure World by Pronovix
Advancing Your API Strategy in an Infrastructure WorldAdvancing Your API Strategy in an Infrastructure World
Advancing Your API Strategy in an Infrastructure World
Pronovix92 views
Achieving DevOps using Open Source Tools in the Enterprise by CollabNet
Achieving DevOps using Open Source Tools in the EnterpriseAchieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
CollabNet6.7K views

Similar to On The Road towards Continuous Delivery

Dockercon State of the Art in Microservices by
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesAdrian Cockcroft
97.5K views78 slides
Microservices the Good Bad and the Ugly by
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the UglyAdrian Cockcroft
9.6K views105 slides
Microxchg Microservices by
Microxchg MicroservicesMicroxchg Microservices
Microxchg MicroservicesAdrian Cockcroft
8K views98 slides
From Continuous Integration to DevOps by
From Continuous Integration to DevOpsFrom Continuous Integration to DevOps
From Continuous Integration to DevOpsIBM UrbanCode Products
6.3K views30 slides
Android & IOS App Development Toronto by
Android & IOS App Development TorontoAndroid & IOS App Development Toronto
Android & IOS App Development TorontoVilroTechnologies
9 views22 slides
Web Design Company Toronto by
Web Design Company TorontoWeb Design Company Toronto
Web Design Company TorontoVilroTechnologies
2 views22 slides

Similar to On The Road towards Continuous Delivery(20)

Dockercon State of the Art in Microservices by Adrian Cockcroft
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in Microservices
Adrian Cockcroft97.5K views
Microservices the Good Bad and the Ugly by Adrian Cockcroft
Microservices the Good Bad and the UglyMicroservices the Good Bad and the Ugly
Microservices the Good Bad and the Ugly
Adrian Cockcroft9.6K views
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ... by Amazon Web Services
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
DevOps on AWS: Accelerating Software Delivery with AWS Developer Tools | AWS ...
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf by Amazon Web Services
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdfLaunching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Launching your Application the Amazon Way - AWS Startup Day Boston 2018.pdf
Continuous integration and delivery with Xamarin and VSTS by Gill Cleeren
Continuous integration and delivery with Xamarin and VSTSContinuous integration and delivery with Xamarin and VSTS
Continuous integration and delivery with Xamarin and VSTS
Gill Cleeren411 views
When Developers Operate and Operators Develop by Adrian Cockcroft
When Developers Operate and Operators DevelopWhen Developers Operate and Operators Develop
When Developers Operate and Operators Develop
Adrian Cockcroft10.8K views
SRV414 NEW LAUNCH! Introducing AWS CodeStar: The central experience to quickl... by Amazon Web Services
SRV414 NEW LAUNCH! Introducing AWS CodeStar: The central experience to quickl...SRV414 NEW LAUNCH! Introducing AWS CodeStar: The central experience to quickl...
SRV414 NEW LAUNCH! Introducing AWS CodeStar: The central experience to quickl...
Keep calms and Docker On ... Innotech by Boyd Hemphill
Keep calms and Docker On ... InnotechKeep calms and Docker On ... Innotech
Keep calms and Docker On ... Innotech
Boyd Hemphill9.4K views
Leaware software house - about us by Leaware.com
Leaware software house - about usLeaware software house - about us
Leaware software house - about us
Leaware.com510 views
Continuous Delivery for cloud - scenarios and scope by Sanjeev Sharma
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scope
Sanjeev Sharma2.4K views
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session by Sanjeev Sharma
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
Sanjeev Sharma5.2K views
Deployment Automation for Hybrid Cloud and Multi-Platform Environments by IBM UrbanCode Products
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
DevOps offerings by Brainstack Technologies by chhavi bansal
DevOps offerings by Brainstack TechnologiesDevOps offerings by Brainstack Technologies
DevOps offerings by Brainstack Technologies
chhavi bansal262 views

Recently uploaded

.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... by
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...Marc Müller
38 views62 slides
Software evolution understanding: Automatic extraction of software identifier... by
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...Ra'Fat Al-Msie'deen
7 views33 slides
Consulting for Data Monetization Maximizing the Profit Potential of Your Data... by
Consulting for Data Monetization Maximizing the Profit Potential of Your Data...Consulting for Data Monetization Maximizing the Profit Potential of Your Data...
Consulting for Data Monetization Maximizing the Profit Potential of Your Data...Flexsin
15 views10 slides
Winter '24 Release Chat.pdf by
Winter '24 Release Chat.pdfWinter '24 Release Chat.pdf
Winter '24 Release Chat.pdfmelbourneauuser
9 views20 slides
WebAssembly by
WebAssemblyWebAssembly
WebAssemblyJens Siebert
35 views18 slides
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)... by
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...Deltares
9 views34 slides

Recently uploaded(20)

.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra... by Marc Müller
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra....NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
.NET Developer Conference 2023 - .NET Microservices mit Dapr – zu viel Abstra...
Marc Müller38 views
Software evolution understanding: Automatic extraction of software identifier... by Ra'Fat Al-Msie'deen
Software evolution understanding: Automatic extraction of software identifier...Software evolution understanding: Automatic extraction of software identifier...
Software evolution understanding: Automatic extraction of software identifier...
Consulting for Data Monetization Maximizing the Profit Potential of Your Data... by Flexsin
Consulting for Data Monetization Maximizing the Profit Potential of Your Data...Consulting for Data Monetization Maximizing the Profit Potential of Your Data...
Consulting for Data Monetization Maximizing the Profit Potential of Your Data...
Flexsin 15 views
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)... by Deltares
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
DSD-INT 2023 Modelling litter in the Yarra and Maribyrnong Rivers (Australia)...
Deltares9 views
360 graden fabriek by info33492
360 graden fabriek360 graden fabriek
360 graden fabriek
info3349236 views
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema by Deltares
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - GeertsemaDSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema
DSD-INT 2023 Delft3D FM Suite 2024.01 1D2D - Beta testing programme - Geertsema
Deltares17 views
MariaDB stored procedures and why they should be improved by Federico Razzoli
MariaDB stored procedures and why they should be improvedMariaDB stored procedures and why they should be improved
MariaDB stored procedures and why they should be improved
Tridens DevOps by Tridens
Tridens DevOpsTridens DevOps
Tridens DevOps
Tridens9 views
Roadmap y Novedades de producto by Neo4j
Roadmap y Novedades de productoRoadmap y Novedades de producto
Roadmap y Novedades de producto
Neo4j50 views
El Arte de lo Possible by Neo4j
El Arte de lo PossibleEl Arte de lo Possible
El Arte de lo Possible
Neo4j39 views
Neo4j y GenAI by Neo4j
Neo4j y GenAI Neo4j y GenAI
Neo4j y GenAI
Neo4j45 views
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut... by Deltares
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...
DSD-INT 2023 Machine learning in hydraulic engineering - Exploring unseen fut...
Deltares6 views
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM... by Deltares
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
DSD-INT 2023 Next-Generation Flood Inundation Mapping for Taiwan - Delft3D FM...
Deltares7 views
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ... by Deltares
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
DSD-INT 2023 Wave-Current Interaction at Montrose Tidal Inlet System and Its ...
Deltares10 views
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols by Deltares
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - DolsDSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
DSD-INT 2023 European Digital Twin Ocean and Delft3D FM - Dols
Deltares7 views
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -... by Deltares
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
DSD-INT 2023 Simulating a falling apron in Delft3D 4 - Engineering Practice -...
Deltares6 views
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI... by Marc Müller
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Dev-Cloud Conference 2023 - Continuous Deployment Showdown: Traditionelles CI...
Marc Müller37 views

On The Road towards Continuous Delivery

  • 1. On The Road towards Continuous Delivery David Lee Debora Gomez Victor Rodriguez Heiko Kahmann Berlin, 05.04.2017 #myToysIT
  • 3. Dr. David Lee BSc(Hons) / PhD in Computer Science (Robert Gordon University, Scotland) Certified Software Architect (Foundation Level) Working since 2010 for the MyToys Group Heiko Kahmann Dipl. Inf., Dipl. Vw (Freie Universität Berlin) Working since 2015 for the MyToys Group 2015-Present: Software Architect at myToys.de About The Presenters Debora Gomez Master in Electrical Engineering (Carlos III University) Working since 2016 for the MyToys Tech Lab in Madrid Victor Rodriguez Master in Computer Science (Public University of Navarre) Working since 2016 for the MyToys Tech Lab in Madrid
  • 4. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 5. Our TechVision: Microservices with a PageAssembler Microservice Header PageAssembler Configuration & Service Discovery Server Load Balancer http://www.mytoys.de/nl/success HTMLRequest /newsletter/success david.lee@mytoys.de PageAssembler Request /newsletter/success PageConfiguration with Service URLs Request myToys.de Header HTML Microservice Newsletter Microservice Footer Newsletter DB david.lee@mytoys.de Newsletter HTML Request myToys.de david.lee@mytoys.de Request myToys.de Footer HTML Cache
  • 6. Connecting the Mobile App through a Public API Public API Microservice Newsletter Registration Newsletter DB david.lee@mytoys.de Request myToys.de Request Newsletter Registration JSON JSON
  • 7. Summary of key components for TechVision PageAssembler Microservices Team Split / Independence / Self- responsibility Cloud Elastic Load Balancing Continuous Delivery Automatic Documentation Test Driven Service Discovery Live Shop Editor
  • 9. Deploying Microservices in Real Time: JAR Deployment with a Pipeline in Jenkins 2
  • 10. Deploying Microservices in Real Time Instant Messaging Channel for updates
  • 11. The problems with simple JAR Deployment Developer Operations V1.0 JAR Deploy JAR File please Deploy Hotfix please Didn‘t work – had to rollback V1.0.1 JAR Didn‘t work – had to rollback Config Oh and you need to configure this…
  • 12. Continuous Delivery via Docker Test Project at a Company Innovation Day: Developer Jenkins Operations Commit new version Generate Docker container
  • 13. Second version of Jenkins pipeline
  • 14. Deploying Microservices to Real Time Developer Operations Docker Container Orchestration Continuous Delivery Continuous Deployment
  • 15. Continuous Delivery Next Steps: Docker Repo 1. Upload Docker Containers into a Docker Repository. Developer Docker Container
  • 16. Continuous Delivery Next Steps: PaaS/OpenShift Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice Microservice
  • 19. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 20. Vertical Team Android Developers QA Engineer Product owner Team Lead iOS Developers Scrum master
  • 22. Development Workflow Let’s take this cool feature ? Ok … whatever you want … There is a missing space !! Developer Code review QA
  • 23. Development Workflow ? I can finally close this nightmare QA Developer Coffee break
  • 25. Continuous Delivery – Pipeline stages Build Automation & Continuous Integration Tests Automation Deployment Automation
  • 29. Learnt Lessons • iOS CI only over a Mac. • Use match to make your life easier with iOS certificates. • Jenkins needs to access the user mac keychain. • Android emulator + docker in a Mac not compatible. • Genymotion rocks. • Automate as much as possible the setup of your environment.
  • 30. Next steps • Dockerize Jenkins & create more slaves using docker. • Automatize Android native app deployment in the market. • Test Rail integration with Appium, Frisby JS, Gatling tests results. • Monitoring Panel (MS & Apps). • Execute tests on a device farm.
  • 31. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 33. Agenda Our Journey towards Continuous Delivery for the Shop Platform Short Break for Pizza Interactive Discussion Groups Review Our Journey towards Continuous Delivery for the Mobile App
  • 34. Interactive Discussion Groups (after the break) 1. Experiences with Continuous Delivery in a Mobile Environment. 2. Experiences with Platform as a Service (PaaS) 3. Experiences with integrating components in a Continuous Delivery Pipeline.