SlideShare a Scribd company logo
Advanced Code Flow, Notes From the
Field
Today's Talk
● The goal for using CI/CD
● Our CI/CD tools set
● Building conventions
● Builds flow
● Scaling the build infrastracture
● Build demo
● How we deploy
● Additional operations in deployment process
● Auto Healing
● Saving Money
● The need for PAAS
● Deploy Demo
The Goal For Using CI/CD
Deliver code safe & fast from SVC to production
Tools Set
● BitBucket
● Jenkins
● Docker
● Registry
● Consul
● RabbitMQ
● Mesos
● Redis
● And some code...
Conventions
Examples
● Projects Names: py-appsflyer-backoffice, Node-
af-dashboard-data
● Projects Modes: clicks,launches,etc...
● Instance names: webh-20001-001-prod
● Container names: afwebhandler_webh-20001-
001-prod.eu1.appsflyer.com
Build Flow
Scaling/HA of the build infrastructure
● Jenkins
● Builders
● Rabbit
● Redis
● Registry
Active/passive master +
horizontal scaled slaves
Scale out docker builders cluster
Rabbit cluster for HA
Master/Slave Redis with sentinel for auto switch over
Active/passive with automatic switch over
Demo-1: Builds
Deploy Flow
Types Of Operations
● Deploy
● Start
● Stop
● Restart
● Revert
● Build/Deploy Branch
● The above actions on specific instances
● The above actions on several modes
● Deploy to Mesos
● And more…
Auto Healing
Saving Money
Demo-2 Deployment
The Needs for PAAS
● Easier for branch testing
● Smoother testing→staging → production flow
● Ideal for small applications
● Faster delivery
● More dynamic
● Less configurations
● Potential for better utilization
Questions?

More Related Content

What's hot

Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
ManageIQ
 
Web Assembly
Web AssemblyWeb Assembly
Web Assembly
Valerio Como
 
Sprint 14
Sprint 14Sprint 14
Sprint 14
ManageIQ
 
The bond between automation and network engineering
The bond between automation and network engineeringThe bond between automation and network engineering
The bond between automation and network engineering
Jimmy Lim
 
Sprint 167
Sprint 167Sprint 167
Sprint 167
ManageIQ
 
Sprint 156
Sprint 156Sprint 156
Sprint 156
ManageIQ
 
Sprint 180
Sprint 180Sprint 180
Sprint 173
Sprint 173Sprint 173
Sprint 173
ManageIQ
 
Sprint 174
Sprint 174Sprint 174
Sprint 174
ManageIQ
 
Sprint 175
Sprint 175Sprint 175
Sprint 175
ManageIQ
 
Kubernetes ingress-pixelfederation
Kubernetes ingress-pixelfederationKubernetes ingress-pixelfederation
Kubernetes ingress-pixelfederation
Juraj Hantak
 
Sprint 166
Sprint 166Sprint 166
Sprint 166
ManageIQ
 
Xpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case StudyXpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case Study
Denys Vasyliev
 
Sprint 179
Sprint 179Sprint 179
Sprint 179
ManageIQ
 
Sprint 159
Sprint 159Sprint 159
Sprint 159
ManageIQ
 
Cloud Native and CNCF
Cloud Native and CNCFCloud Native and CNCF
Cloud Native and CNCF
Akash Agrawal
 
Sprint 164
Sprint 164Sprint 164
Sprint 164
ManageIQ
 
oVirt Introduction
oVirt IntroductionoVirt Introduction
oVirt Introduction
Roozbeh Shafiee
 
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
Igalia
 
Sprint 170
Sprint 170Sprint 170
Sprint 170
ManageIQ
 

What's hot (20)

Sprint 16 report
Sprint 16 reportSprint 16 report
Sprint 16 report
 
Web Assembly
Web AssemblyWeb Assembly
Web Assembly
 
Sprint 14
Sprint 14Sprint 14
Sprint 14
 
The bond between automation and network engineering
The bond between automation and network engineeringThe bond between automation and network engineering
The bond between automation and network engineering
 
Sprint 167
Sprint 167Sprint 167
Sprint 167
 
Sprint 156
Sprint 156Sprint 156
Sprint 156
 
Sprint 180
Sprint 180Sprint 180
Sprint 180
 
Sprint 173
Sprint 173Sprint 173
Sprint 173
 
Sprint 174
Sprint 174Sprint 174
Sprint 174
 
Sprint 175
Sprint 175Sprint 175
Sprint 175
 
Kubernetes ingress-pixelfederation
Kubernetes ingress-pixelfederationKubernetes ingress-pixelfederation
Kubernetes ingress-pixelfederation
 
Sprint 166
Sprint 166Sprint 166
Sprint 166
 
Xpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case StudyXpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case Study
 
Sprint 179
Sprint 179Sprint 179
Sprint 179
 
Sprint 159
Sprint 159Sprint 159
Sprint 159
 
Cloud Native and CNCF
Cloud Native and CNCFCloud Native and CNCF
Cloud Native and CNCF
 
Sprint 164
Sprint 164Sprint 164
Sprint 164
 
oVirt Introduction
oVirt IntroductionoVirt Introduction
oVirt Introduction
 
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
 
Sprint 170
Sprint 170Sprint 170
Sprint 170
 

Similar to Advanced Code Flow, Notes From the Field

OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
NETWAYS
 
Introduction to PaaS and Heroku
Introduction to PaaS and HerokuIntroduction to PaaS and Heroku
Introduction to PaaS and Heroku
Tapio Rautonen
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
Peter Bittner
 
[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin
HanLing Shen
 
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
NETWAYS
 
Promise of DevOps
Promise of DevOpsPromise of DevOps
Promise of DevOps
Juraj Hantak
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
GlobalLogic Ukraine
 
Docker on docker leveraging kubernetes in docker ee
Docker on docker leveraging kubernetes in docker eeDocker on docker leveraging kubernetes in docker ee
Docker on docker leveraging kubernetes in docker ee
Docker, Inc.
 
Web technologies for desktop development
Web technologies for desktop developmentWeb technologies for desktop development
Web technologies for desktop development
Darko Kukovec
 
Hybrid CI/CD with Kubernetes and Codefresh
Hybrid CI/CD with Kubernetes and CodefreshHybrid CI/CD with Kubernetes and Codefresh
Hybrid CI/CD with Kubernetes and Codefresh
DevOps.com
 
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
Nima Badiey
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOps
Aarno Aukia
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShift
Yaniv cohen
 
DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端
Hung-Yen Chen
 
Introduction to Modern DevOps Technologies
Introduction to  Modern DevOps TechnologiesIntroduction to  Modern DevOps Technologies
Introduction to Modern DevOps Technologies
Kriangkrai Chaonithi
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
Nebulaworks
 
Avoid the Vendor Lock-in Trap (with App Deployment)
Avoid the Vendor Lock-in Trap (with App Deployment)Avoid the Vendor Lock-in Trap (with App Deployment)
Avoid the Vendor Lock-in Trap (with App Deployment)
Peter Bittner
 
Web後端技術的演變
Web後端技術的演變Web後端技術的演變
Web後端技術的演變
inwin stack
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development Pipeline
Docker, Inc.
 
It's a Breeze to develop Apache Airflow (Apache Con Berlin)
It's a Breeze to develop Apache Airflow (Apache Con Berlin)It's a Breeze to develop Apache Airflow (Apache Con Berlin)
It's a Breeze to develop Apache Airflow (Apache Con Berlin)
Jarek Potiuk
 

Similar to Advanced Code Flow, Notes From the Field (20)

OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
 
Introduction to PaaS and Heroku
Introduction to PaaS and HerokuIntroduction to PaaS and Heroku
Introduction to PaaS and Heroku
 
A guide to modern software development 2018
A guide to modern software development 2018A guide to modern software development 2018
A guide to modern software development 2018
 
[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin[20200720]cloud native develoment - Nelson Lin
[20200720]cloud native develoment - Nelson Lin
 
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
stackconf 2020 | The path to a Serverless-native era with Kubernetes by Paolo...
 
Promise of DevOps
Promise of DevOpsPromise of DevOps
Promise of DevOps
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Docker on docker leveraging kubernetes in docker ee
Docker on docker leveraging kubernetes in docker eeDocker on docker leveraging kubernetes in docker ee
Docker on docker leveraging kubernetes in docker ee
 
Web technologies for desktop development
Web technologies for desktop developmentWeb technologies for desktop development
Web technologies for desktop development
 
Hybrid CI/CD with Kubernetes and Codefresh
Hybrid CI/CD with Kubernetes and CodefreshHybrid CI/CD with Kubernetes and Codefresh
Hybrid CI/CD with Kubernetes and Codefresh
 
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
CloudBees Jenkins and Pivotal Cloud Foundry - Continuous Delivery for Cloud N...
 
DevSecOps - Security in DevOps
DevSecOps - Security in DevOpsDevSecOps - Security in DevOps
DevSecOps - Security in DevOps
 
Devops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShiftDevops with Python by Yaniv Cohen DevopShift
Devops with Python by Yaniv Cohen DevopShift
 
DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端DevOpsDays Taipei 2017 從打鐵到雲端
DevOpsDays Taipei 2017 從打鐵到雲端
 
Introduction to Modern DevOps Technologies
Introduction to  Modern DevOps TechnologiesIntroduction to  Modern DevOps Technologies
Introduction to Modern DevOps Technologies
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
Avoid the Vendor Lock-in Trap (with App Deployment)
Avoid the Vendor Lock-in Trap (with App Deployment)Avoid the Vendor Lock-in Trap (with App Deployment)
Avoid the Vendor Lock-in Trap (with App Deployment)
 
Web後端技術的演變
Web後端技術的演變Web後端技術的演變
Web後端技術的演變
 
DCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development PipelineDCEU 18: Building Your Development Pipeline
DCEU 18: Building Your Development Pipeline
 
It's a Breeze to develop Apache Airflow (Apache Con Berlin)
It's a Breeze to develop Apache Airflow (Apache Con Berlin)It's a Breeze to develop Apache Airflow (Apache Con Berlin)
It's a Breeze to develop Apache Airflow (Apache Con Berlin)
 

More from Ariel Moskovich

Consul scale
Consul scaleConsul scale
Consul scale
Ariel Moskovich
 
Kafka ops-new
Kafka ops-newKafka ops-new
Kafka ops-new
Ariel Moskovich
 
Docker appsflyer
Docker appsflyerDocker appsflyer
Docker appsflyer
Ariel Moskovich
 
Practical Monitoring Techniques
Practical Monitoring TechniquesPractical Monitoring Techniques
Practical Monitoring Techniques
Ariel Moskovich
 
Consul
ConsulConsul
sensu
sensusensu
devopstools
devopstoolsdevopstools
devopstools
Ariel Moskovich
 
kafka
kafkakafka
Bouncer
BouncerBouncer
Devopstools
DevopstoolsDevopstools
Devopstools
Ariel Moskovich
 
Kafka aws
Kafka awsKafka aws
Kafka aws
Ariel Moskovich
 
Docker in prod
Docker in prodDocker in prod
Docker in prod
Ariel Moskovich
 
Docker tlv
Docker tlvDocker tlv
Docker tlv
Ariel Moskovich
 

More from Ariel Moskovich (13)

Consul scale
Consul scaleConsul scale
Consul scale
 
Kafka ops-new
Kafka ops-newKafka ops-new
Kafka ops-new
 
Docker appsflyer
Docker appsflyerDocker appsflyer
Docker appsflyer
 
Practical Monitoring Techniques
Practical Monitoring TechniquesPractical Monitoring Techniques
Practical Monitoring Techniques
 
Consul
ConsulConsul
Consul
 
sensu
sensusensu
sensu
 
devopstools
devopstoolsdevopstools
devopstools
 
kafka
kafkakafka
kafka
 
Bouncer
BouncerBouncer
Bouncer
 
Devopstools
DevopstoolsDevopstools
Devopstools
 
Kafka aws
Kafka awsKafka aws
Kafka aws
 
Docker in prod
Docker in prodDocker in prod
Docker in prod
 
Docker tlv
Docker tlvDocker tlv
Docker tlv
 

Recently uploaded

How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 

Recently uploaded (20)

How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 

Advanced Code Flow, Notes From the Field

  • 1. Advanced Code Flow, Notes From the Field
  • 2. Today's Talk ● The goal for using CI/CD ● Our CI/CD tools set ● Building conventions ● Builds flow ● Scaling the build infrastracture ● Build demo ● How we deploy ● Additional operations in deployment process ● Auto Healing ● Saving Money ● The need for PAAS ● Deploy Demo
  • 3. The Goal For Using CI/CD Deliver code safe & fast from SVC to production
  • 4. Tools Set ● BitBucket ● Jenkins ● Docker ● Registry ● Consul ● RabbitMQ ● Mesos ● Redis ● And some code...
  • 6. Examples ● Projects Names: py-appsflyer-backoffice, Node- af-dashboard-data ● Projects Modes: clicks,launches,etc... ● Instance names: webh-20001-001-prod ● Container names: afwebhandler_webh-20001- 001-prod.eu1.appsflyer.com
  • 8. Scaling/HA of the build infrastructure ● Jenkins ● Builders ● Rabbit ● Redis ● Registry Active/passive master + horizontal scaled slaves Scale out docker builders cluster Rabbit cluster for HA Master/Slave Redis with sentinel for auto switch over Active/passive with automatic switch over
  • 11. Types Of Operations ● Deploy ● Start ● Stop ● Restart ● Revert ● Build/Deploy Branch ● The above actions on specific instances ● The above actions on several modes ● Deploy to Mesos ● And more…
  • 15. The Needs for PAAS ● Easier for branch testing ● Smoother testing→staging → production flow ● Ideal for small applications ● Faster delivery ● More dynamic ● Less configurations ● Potential for better utilization