SlideShare une entreprise Scribd logo
1  sur  21
1
CI/CD Overview
2
Agenda
• What's CI/CD?
• Benefits
• CI/CD tools
• Bets Practices
• Challenges
3
What's Continuous Integration?
 Continuous integration (CI) is a practice of integrating code from
multiple developers into a central repository (or branch), multiple
times per day
 A CI build consists of automated processes that:
• Run automatic code quality scan, and generate a report how well
latest code changes adhere to good coding practices
• Build code and run any automated tests (mostly unit tests) that
are written to make sure the changes don't break any
functionality
• Generate and publish a test coverage report
4
CI Process
5
What's CD?
 There're two meaning of CD. It stands for Continuous Delivery,
and Continuous Deployment as well
6
What's Continuous Delivery?
 Continuous delivery is an extension of continuous integration where
code changes are automatically prepared for a release to
production.
 It expands CI upon deploying code changes to testing environment
and running functional test, UI test, performance test, security test
and so on after build stage
7
What's Continuous Deployment?
 Continuous deployment goes one step further than continuous
delivery.
 Every change that passed all stages of production pipeline is
released to customers without any human intervention
 Only a failed step can prevent a new change to be deployed to
production
8
CI vs Continuous Delivery vs Continuous Deployment
9
Benefits of CI/CD
 Higher quality
• Less bugs get shipped to production as regressions are captured
early by automated tests
• Developers are alerted as soon as they break a build and can
work on fixing it before moving to another task
10
Benefits of CI/CD (cont.)
 Low risk releases
• Making a release is easier as integration issues have been
solved early
• Easy to fix in case of problem as you deploy small batches of
changes
11
Benefits of CI/CD (cont.)
 Lower costs
• Cost for fixing an issue in development phase is much lesser
than when it already was in production
• Testing costs are reduced significantly since CI/CD server takes
care of running hundreds of tests in the matter of seconds
12
Benefits of CI/CD (cont.)
 Better products
• Team are freed to focus their effort on application business logic,
user experience, and other high-level activities that bring more
value to end users/customers.
• Team is now focusing on what customers care about most
• Techniques such as A/B testing enable team to test ideas with
users before buidling whole feature
13
Benefits of CI/CD (cont.)
 Time to market faster
• When everything is automated, team doesn't have to spend
days, even weeks preparing for a release anymore
• CI/CD is also removed a large amount of re-work effort that's
often a reason to postpone a release.
• Customers see continuous stream of improvements and quality
increases every day, instead of every month, quarter or even
year
14
Benefits of CI/CD (cont.)
• Happier team
• CI/CD makes releases are less painful, so it reduces team
burnout
• Continuous deployment is excellent way to take pressure off
the team since there's no "release day" anymore :)
• When an application is released more frequently, the team can
see more often outcomes of the work they have done.
15
CI/CD Tools
16
Most popular CI Tools
Name Site Opensource On-premise
Jenkins https://jenkins.io/ Yes Yes
Bamboo
https://www.atlassian.com/softwa
re/bamboo
No Yes
Circle CI https://circleci.com/ No Yes
Travis https://travis-ci.com/ Yes No
Drone https://drone.io/ Yes Yes
TeamCity No Yes
GoCD https://www.gocd.org/ Yes Yes
17
Practices
 Automated everything: build, test, deploy, monitor
 Keep everything in source control system (Git, SVN, etc...)
 Commit your code changes to repository frequently
 Do not commit directly to delivery branch, use feature branches and
MR/PR workflow
 Do not merge broken code into delivery branch
 Every commit should be built
 Build only once and promote results through pipeline
 Do not use dynamic version for dependencies (e.g. latest,
production)
18
Practices (cont.)
 Run tests on ephemeral environment when possible
 Run fastest tests early
 Deploy the same way to every environment
 No-downtime deployment
 Use container technology (Docker) if possible as makes
building, deployment simple
 Automated feedback on the entire process
 Make everyone can see the pipeline results
 Keep pipeline fast
19
Practices (cont.)
 Every team member is responsible for fully own their features from
development to CI/CD pipeline in order to enable them to iterate
quickly without being blocked by a dedicated team (or a person)
 Take advantages of practices like Configuration as
Code, Infrastructure as Code, Pipeline as Code, etc...
20
Challenges when implementing CI/CD
 Require organization changes and mindset shifts
 Deep technical knowledge to automate the entire process
 Team is required to use various technologies depending on
application stack
 Infrastructure cost is a potential issue since team requires at least
two identical environments (staging and production) that allows the
team tests new changes without disrupting production.
 Etc..
21
Bear in mind CI/CD is not magic. It's about continuous
daily improvement. If it's painful, you're doing it wrong.
Do it again, and bring the pain forward.

Contenu connexe

Tendances

Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins IntroductionPavan Gupta
 
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CIContinuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CIDavid Hahn
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaEdureka!
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To JenkinsKnoldus Inc.
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with JenkinsMartin Málek
 
Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Amazon Web Services
 
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesAmazon Web Services
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryJoost van der Griendt
 
Transforming Organizations with CI/CD
Transforming Organizations with CI/CDTransforming Organizations with CI/CD
Transforming Organizations with CI/CDCprime
 
Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkinsAbe Diaz
 

Tendances (20)

Jenkins Introduction
Jenkins IntroductionJenkins Introduction
Jenkins Introduction
 
Gitlab CI/CD
Gitlab CI/CDGitlab CI/CD
Gitlab CI/CD
 
Continuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CIContinuous Integration/Deployment with Gitlab CI
Continuous Integration/Deployment with Gitlab CI
 
Jenkins CI presentation
Jenkins CI presentationJenkins CI presentation
Jenkins CI presentation
 
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | EdurekaWhat is Jenkins | Jenkins Tutorial for Beginners | Edureka
What is Jenkins | Jenkins Tutorial for Beginners | Edureka
 
CICD with Jenkins
CICD with JenkinsCICD with Jenkins
CICD with Jenkins
 
An Introduction To Jenkins
An Introduction To JenkinsAn Introduction To Jenkins
An Introduction To Jenkins
 
CI and CD with Jenkins
CI and CD with JenkinsCI and CD with Jenkins
CI and CD with Jenkins
 
Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration Continuous Delivery, Continuous Integration
Continuous Delivery, Continuous Integration
 
Jenkins presentation
Jenkins presentationJenkins presentation
Jenkins presentation
 
Jenkins tutorial
Jenkins tutorialJenkins tutorial
Jenkins tutorial
 
Build CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation SlidesBuild CICD Pipeline for Container Presentation Slides
Build CICD Pipeline for Container Presentation Slides
 
Jenkins Overview
Jenkins OverviewJenkins Overview
Jenkins Overview
 
Flusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous DeliveryFlusso Continuous Integration & Continuous Delivery
Flusso Continuous Integration & Continuous Delivery
 
devops
devops devops
devops
 
CICD with Jenkins
CICD with JenkinsCICD with Jenkins
CICD with Jenkins
 
Transforming Organizations with CI/CD
Transforming Organizations with CI/CDTransforming Organizations with CI/CD
Transforming Organizations with CI/CD
 
Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkins
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Gitlab ci-cd
Gitlab ci-cdGitlab ci-cd
Gitlab ci-cd
 

Similaire à CI/CD Overview

CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionajayrajaganeshkayala
 
Efficient CI_CD in the Software Development Lifecycle.pdf
Efficient CI_CD in the Software Development Lifecycle.pdfEfficient CI_CD in the Software Development Lifecycle.pdf
Efficient CI_CD in the Software Development Lifecycle.pdfKeyX Technologies
 
CI/CD Pipelines: Reliable Software Delivery
CI/CD Pipelines: Reliable Software Delivery CI/CD Pipelines: Reliable Software Delivery
CI/CD Pipelines: Reliable Software Delivery Bahaa Al Zubaidi
 
Path To Continuous Test Automation Using CICD Pipeline.pdf
Path To Continuous Test Automation Using CICD Pipeline.pdfPath To Continuous Test Automation Using CICD Pipeline.pdf
Path To Continuous Test Automation Using CICD Pipeline.pdfpCloudy
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15Pierluigi Riti
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with RubyPierluigi Riti
 
Continuous Delivery process
Continuous Delivery processContinuous Delivery process
Continuous Delivery processSquareboat
 
Continuous Integration and Testing_ A DevOps Approach.pdf
Continuous Integration and Testing_ A DevOps Approach.pdfContinuous Integration and Testing_ A DevOps Approach.pdf
Continuous Integration and Testing_ A DevOps Approach.pdfRuhiParveen6
 
Streamlining Mobile App Development with CI/CD A Pathway to Efficiency and ...
Streamlining Mobile App Development with CI/CD   A Pathway to Efficiency and ...Streamlining Mobile App Development with CI/CD   A Pathway to Efficiency and ...
Streamlining Mobile App Development with CI/CD A Pathway to Efficiency and ...Elina619459
 
Components of CI/CD in DevOps
Components of CI/CD in DevOpsComponents of CI/CD in DevOps
Components of CI/CD in DevOpssunil173422
 
Test Driven Development & CI/CD
Test Driven Development & CI/CDTest Driven Development & CI/CD
Test Driven Development & CI/CDShanmuga S Muthu
 
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 EngineeringSushma
 
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...WSO2
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationwebomates
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityRocket Software
 
Flight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An OverviewFlight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An OverviewSynopsys Software Integrity Group
 
DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)Ahmed Misbah
 

Similaire à CI/CD Overview (20)

DevOps: Age Of CI/CD
DevOps: Age Of CI/CDDevOps: Age Of CI/CD
DevOps: Age Of CI/CD
 
CI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual interventionCI, CD -Tools to integrate without manual intervention
CI, CD -Tools to integrate without manual intervention
 
Efficient CI_CD in the Software Development Lifecycle.pdf
Efficient CI_CD in the Software Development Lifecycle.pdfEfficient CI_CD in the Software Development Lifecycle.pdf
Efficient CI_CD in the Software Development Lifecycle.pdf
 
CI/CD Pipelines: Reliable Software Delivery
CI/CD Pipelines: Reliable Software Delivery CI/CD Pipelines: Reliable Software Delivery
CI/CD Pipelines: Reliable Software Delivery
 
Path To Continuous Test Automation Using CICD Pipeline.pdf
Path To Continuous Test Automation Using CICD Pipeline.pdfPath To Continuous Test Automation Using CICD Pipeline.pdf
Path To Continuous Test Automation Using CICD Pipeline.pdf
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with Ruby
 
Continuous Delivery process
Continuous Delivery processContinuous Delivery process
Continuous Delivery process
 
Continuous Integration and Testing_ A DevOps Approach.pdf
Continuous Integration and Testing_ A DevOps Approach.pdfContinuous Integration and Testing_ A DevOps Approach.pdf
Continuous Integration and Testing_ A DevOps Approach.pdf
 
Streamlining Mobile App Development with CI/CD A Pathway to Efficiency and ...
Streamlining Mobile App Development with CI/CD   A Pathway to Efficiency and ...Streamlining Mobile App Development with CI/CD   A Pathway to Efficiency and ...
Streamlining Mobile App Development with CI/CD A Pathway to Efficiency and ...
 
Components of CI/CD in DevOps
Components of CI/CD in DevOpsComponents of CI/CD in DevOps
Components of CI/CD in DevOps
 
Test Driven Development & CI/CD
Test Driven Development & CI/CDTest Driven Development & CI/CD
Test Driven Development & CI/CD
 
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
 
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Implementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software QualityImplementing Continuous Integration to Improve Software Quality
Implementing Continuous Integration to Improve Software Quality
 
Flight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An OverviewFlight East 2018 Presentation–Continuous Integration––An Overview
Flight East 2018 Presentation–Continuous Integration––An Overview
 
DevOps and SF.pdf
DevOps and SF.pdfDevOps and SF.pdf
DevOps and SF.pdf
 
Automation CICD
Automation CICDAutomation CICD
Automation CICD
 
DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)DevOps for absolute beginners (2022 edition)
DevOps for absolute beginners (2022 edition)
 

Plus de An Nguyen

Introduce to Git and Jenkins
Introduce to Git and JenkinsIntroduce to Git and Jenkins
Introduce to Git and JenkinsAn Nguyen
 
Introduce to Credstash
Introduce to CredstashIntroduce to Credstash
Introduce to CredstashAn Nguyen
 
Introduction To AWS & AWS Lambda
Introduction To AWS & AWS LambdaIntroduction To AWS & AWS Lambda
Introduction To AWS & AWS LambdaAn Nguyen
 
Introduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmIntroduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmAn Nguyen
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesAn Nguyen
 
Spring framework
Spring frameworkSpring framework
Spring frameworkAn Nguyen
 
Luận văn tìm hiểu Spring
Luận văn tìm hiểu SpringLuận văn tìm hiểu Spring
Luận văn tìm hiểu SpringAn Nguyen
 
Terminal Services and VPN
Terminal Services and VPNTerminal Services and VPN
Terminal Services and VPNAn Nguyen
 
Tân sinh viên TECH - AGU 2014
Tân sinh viên TECH - AGU 2014Tân sinh viên TECH - AGU 2014
Tân sinh viên TECH - AGU 2014An Nguyen
 
Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#An Nguyen
 
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làm
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làmNêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làm
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làmAn Nguyen
 
Hướng dẫn lập trình quản lý c#
Hướng dẫn lập trình quản lý c#Hướng dẫn lập trình quản lý c#
Hướng dẫn lập trình quản lý c#An Nguyen
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàngAn Nguyen
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàngAn Nguyen
 
RichTetxtBox control
RichTetxtBox controlRichTetxtBox control
RichTetxtBox controlAn Nguyen
 
Hội nghị học tốt CNTT 2013 - An Giang University
Hội nghị học tốt CNTT 2013 - An Giang UniversityHội nghị học tốt CNTT 2013 - An Giang University
Hội nghị học tốt CNTT 2013 - An Giang UniversityAn Nguyen
 

Plus de An Nguyen (17)

Terraform
TerraformTerraform
Terraform
 
Introduce to Git and Jenkins
Introduce to Git and JenkinsIntroduce to Git and Jenkins
Introduce to Git and Jenkins
 
Introduce to Credstash
Introduce to CredstashIntroduce to Credstash
Introduce to Credstash
 
Introduction To AWS & AWS Lambda
Introduction To AWS & AWS LambdaIntroduction To AWS & AWS Lambda
Introduction To AWS & AWS Lambda
 
Introduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker SwarmIntroduction To Docker, Docker Compose, Docker Swarm
Introduction To Docker, Docker Compose, Docker Swarm
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on Kubernetes
 
Spring framework
Spring frameworkSpring framework
Spring framework
 
Luận văn tìm hiểu Spring
Luận văn tìm hiểu SpringLuận văn tìm hiểu Spring
Luận văn tìm hiểu Spring
 
Terminal Services and VPN
Terminal Services and VPNTerminal Services and VPN
Terminal Services and VPN
 
Tân sinh viên TECH - AGU 2014
Tân sinh viên TECH - AGU 2014Tân sinh viên TECH - AGU 2014
Tân sinh viên TECH - AGU 2014
 
Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#Quy tắc thiết kế giao diện và viết code C#
Quy tắc thiết kế giao diện và viết code C#
 
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làm
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làmNêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làm
Nêu cao tinh thần trách nhiệm, chống chủ nghĩa cá nhân, nói đi đôi với làm
 
Hướng dẫn lập trình quản lý c#
Hướng dẫn lập trình quản lý c#Hướng dẫn lập trình quản lý c#
Hướng dẫn lập trình quản lý c#
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàng
 
Quản lý quan hệ khách hàng
Quản lý quan hệ khách hàngQuản lý quan hệ khách hàng
Quản lý quan hệ khách hàng
 
RichTetxtBox control
RichTetxtBox controlRichTetxtBox control
RichTetxtBox control
 
Hội nghị học tốt CNTT 2013 - An Giang University
Hội nghị học tốt CNTT 2013 - An Giang UniversityHội nghị học tốt CNTT 2013 - An Giang University
Hội nghị học tốt CNTT 2013 - An Giang University
 

Dernier

WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 

Dernier (20)

WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 

CI/CD Overview

  • 2. 2 Agenda • What's CI/CD? • Benefits • CI/CD tools • Bets Practices • Challenges
  • 3. 3 What's Continuous Integration?  Continuous integration (CI) is a practice of integrating code from multiple developers into a central repository (or branch), multiple times per day  A CI build consists of automated processes that: • Run automatic code quality scan, and generate a report how well latest code changes adhere to good coding practices • Build code and run any automated tests (mostly unit tests) that are written to make sure the changes don't break any functionality • Generate and publish a test coverage report
  • 5. 5 What's CD?  There're two meaning of CD. It stands for Continuous Delivery, and Continuous Deployment as well
  • 6. 6 What's Continuous Delivery?  Continuous delivery is an extension of continuous integration where code changes are automatically prepared for a release to production.  It expands CI upon deploying code changes to testing environment and running functional test, UI test, performance test, security test and so on after build stage
  • 7. 7 What's Continuous Deployment?  Continuous deployment goes one step further than continuous delivery.  Every change that passed all stages of production pipeline is released to customers without any human intervention  Only a failed step can prevent a new change to be deployed to production
  • 8. 8 CI vs Continuous Delivery vs Continuous Deployment
  • 9. 9 Benefits of CI/CD  Higher quality • Less bugs get shipped to production as regressions are captured early by automated tests • Developers are alerted as soon as they break a build and can work on fixing it before moving to another task
  • 10. 10 Benefits of CI/CD (cont.)  Low risk releases • Making a release is easier as integration issues have been solved early • Easy to fix in case of problem as you deploy small batches of changes
  • 11. 11 Benefits of CI/CD (cont.)  Lower costs • Cost for fixing an issue in development phase is much lesser than when it already was in production • Testing costs are reduced significantly since CI/CD server takes care of running hundreds of tests in the matter of seconds
  • 12. 12 Benefits of CI/CD (cont.)  Better products • Team are freed to focus their effort on application business logic, user experience, and other high-level activities that bring more value to end users/customers. • Team is now focusing on what customers care about most • Techniques such as A/B testing enable team to test ideas with users before buidling whole feature
  • 13. 13 Benefits of CI/CD (cont.)  Time to market faster • When everything is automated, team doesn't have to spend days, even weeks preparing for a release anymore • CI/CD is also removed a large amount of re-work effort that's often a reason to postpone a release. • Customers see continuous stream of improvements and quality increases every day, instead of every month, quarter or even year
  • 14. 14 Benefits of CI/CD (cont.) • Happier team • CI/CD makes releases are less painful, so it reduces team burnout • Continuous deployment is excellent way to take pressure off the team since there's no "release day" anymore :) • When an application is released more frequently, the team can see more often outcomes of the work they have done.
  • 16. 16 Most popular CI Tools Name Site Opensource On-premise Jenkins https://jenkins.io/ Yes Yes Bamboo https://www.atlassian.com/softwa re/bamboo No Yes Circle CI https://circleci.com/ No Yes Travis https://travis-ci.com/ Yes No Drone https://drone.io/ Yes Yes TeamCity No Yes GoCD https://www.gocd.org/ Yes Yes
  • 17. 17 Practices  Automated everything: build, test, deploy, monitor  Keep everything in source control system (Git, SVN, etc...)  Commit your code changes to repository frequently  Do not commit directly to delivery branch, use feature branches and MR/PR workflow  Do not merge broken code into delivery branch  Every commit should be built  Build only once and promote results through pipeline  Do not use dynamic version for dependencies (e.g. latest, production)
  • 18. 18 Practices (cont.)  Run tests on ephemeral environment when possible  Run fastest tests early  Deploy the same way to every environment  No-downtime deployment  Use container technology (Docker) if possible as makes building, deployment simple  Automated feedback on the entire process  Make everyone can see the pipeline results  Keep pipeline fast
  • 19. 19 Practices (cont.)  Every team member is responsible for fully own their features from development to CI/CD pipeline in order to enable them to iterate quickly without being blocked by a dedicated team (or a person)  Take advantages of practices like Configuration as Code, Infrastructure as Code, Pipeline as Code, etc...
  • 20. 20 Challenges when implementing CI/CD  Require organization changes and mindset shifts  Deep technical knowledge to automate the entire process  Team is required to use various technologies depending on application stack  Infrastructure cost is a potential issue since team requires at least two identical environments (staging and production) that allows the team tests new changes without disrupting production.  Etc..
  • 21. 21 Bear in mind CI/CD is not magic. It's about continuous daily improvement. If it's painful, you're doing it wrong. Do it again, and bring the pain forward.