SlideShare a Scribd company logo
DevOps - CI/CD
- Presented by
Sandeep Kumar J
Software Engineer
Jouve India Private Limited
Agenda
 DevOps
 Continuous Development
 Continuous Testing
 Continuous Integration
 Continuous Deployment
 Continuous Testing
DevOps
DevOps
 First it was Waterfall, next it was Agile, and now it's DevOps. This is how modern
developers approach building great products.
 Waterfall:
 - Delivery at End
 - Cost, Time will be high due to last minute discovery/change
 Agile:
 - Sprint based release
 - More Human Effort
 - Again Cost and Time can be high if its properly not executed or planned
 Devops-
 - Continous Integration and Delivery
 - Risk of last minute surprise is very less due to early stage tunings
Pipeline - CI/CD in High Level
Continuous Development
 This is the phase which involves ‘planning‘ and ‘coding‘ of the software
application’s functionality. There are no tools for planning as such, but there
are a number of tools for maintaining the code.
 The code can be written in any language, but it is maintained by
using Version Control tools. These are the Continuous Development DevOps
tools. The most popular tools used are: Git, SVN, Mercurial, CVS and JIRA.
Continuous Development
 So why is it important to main versions of the code? Which of the Dev vs
Ops problem does it solve? Let’s understand that first.
 Versions are maintained (in a central repository), to hold a single source of
truth. So that all the developers can collaborate on the ‘latest committed’
code, and even operations can have access to that same code when they plan
to make a release.
 Whenever a mishap happens during a release, or even if there are lots of bugs
in the code (faulty feature), there is nothing to worry. Ops can quickly
rollback the deployed code and thus revert back to the previous stable state.
Continuous Testing
 When the code is developed, it is maddening to release it straight to
deployment. The code should first be tested for bugs and performance.
 Automation testing is the answer to a lot of cries of manual testers. Tools
like Selenium, TestNG, JUnit/NUnit are used to automate the execution of
our test cases. So, what are its benefits?
 Automation testing saves a lot of time, effort and labor for executing the
tests manually.
 Besides that, report generation is a big plus. The task of evaluating which test
cases failed in a test suite gets simpler.
Continuous Testing
 Selenium does the automation testing, and the reports are generated by
TestNG. But to automate this entire testing phase, we need a trigger right?
So, what is the trigger? This is where the role of Continuous Integration tools
like Jenkins coming into the picture.
Continuous Testing
Continuous Integration
 With continuous integration, developers frequently integrate their code into
a main branch of a common repository.
 The big idea here is to reduce integration costs by having developers do it
sooner and more frequently. In practice, a developer will often discover
boundary conflicts between new and existing code at the time of integration.
 The goal of CI is to refine integration into a simple, easily-repeatable
everyday development task that will serve to reduce overall build costs and
reveal defects early in the cycle.
 To reduce friction during integration tasks, continuous integration relies on
test suites and an automated test execution.
 Most popular CI tool in the market is Jenkins. but also available in other tools
such as GitLab CI,
Continuous Integration
 It is the CI tools which orchestrates the automation of tools falling under
other DevOps lifecycle phases. Be it, Continuous Development tools, or
Continuous Testing tools, or Continuous Deployment tools, or even Continuous
Monitoring tools, the Continuous Integration tools can be integrated with all
of them.
Continuous Integration
 CD - When integrated with Git/ SVN, Jenkins can schedule jobs (pulling the code from
shared repositories) automatically and make it ready for builds and testing (Continuous
Development). Jenkins can build jobs either at scheduled times of day or when ever there
is a commit pushed to the central repository.
 CT- When integrated with testing tools like Selenium, we can achieve Continuous Testing.
How? The developed code can be built using tools like Maven/ Ant/ Gradle.
 When the code is built, then Selenium can automate the execution of that code. How does
it automate it? By creating a suite of test cases and executing the test cases one after the
other.
 The role of Jenkins/ Hudson/ Bamboo here would be to schedule/ automate “Selenium to
automate test case execution”.
 CD - When integrated with Continuous Deployment tools, Jenkins/ Hudson/ Bamboo can
trigger thedeployments planned by configuration management/ containerization tools.
 CM - And finally, Jenkins/ Hudson can be integrated with monitoring tools like Splunk/ ELK/
Nagios/ NewRelic, to continuously monitor the status & performance of the server where
the deployments have been made.
Continuous Deployment
 Configuration Management tools or Containerization tools. Both set of tools
here help in achieving Continuous Deployment (CD).
 In simpler words, it is the act
of releasing deployments to servers, scheduling updates on all servers and
most importantly keeping the configurations consistent across all the severs
 For this, we have tools like Puppet, Chef, Ansible, SaltStack and more. But
the best tool here is Puppet. Puppet & the other CM tools work based on the
master-slave architecture. When there is a deployment made to the master,
the master is responsible for replicating those changes across all the slaves
Continuous Deployment
 Containerization tools are other set of tools which help in maintaining
consistency across the environments where the application is developed,
tested and deployed. It eliminates any chance of errors/ failure in production
environment by packaging and replicating the same dependencies and
packages used in development/ testing/ staging environment and The clear
winner here is Docker.
 Amazon ECS, Azure Container Service and Google Container Engine are a
few of the cloud services that have started radical support for Docker
containers.
Continuous Deployment
Continuous Deployment
Docker
Continuous Monitoring
 Monitoring is as important as developing the application because there will
always be a chance of bugs which escape undetected during the testing
phase.
 Splunk, ELK Stack, Nagios, Sensu, NewRelic are some of the popular tools
for monitoring. When used in combination with Jenkins, we achieve
Continuous Monitoring.
 Monitoring tools also report failure/ unfavorable conditions before your
clients/ customers get to experience the faulty features.
 Splunk and ELK stack are the two tools which is a major competitors.
Continuous Monitoring
 Splunk is a (paid tool). But, this also effectively means that working on Splunk
is very easy.
 ELK stack however, is a combination of 3 open-source
tools: ElasticSearch, LogStash & Kibana. It maybe free, but setting it up is not
as easy as a commercial tool like Splunk.
Beats
 Beats are a collection of lightweight (resource efficient, no dependencies,
small) and open source log shippers that act as agents installed on the
different servers in your infrastructure for collecting logs or metrics.
 Types:
Filebeat
Filebeat, as its name implies, is used for collecting and shipping log files, and is
also the most commonly used beat.
Packetbeat
A network packet analyzer, Packetbeat was the first beat introduced. Packetbeat
captures network traffic between servers, and as such can be used for
application and performance monitoring.
Metricbeat
Metricbeat is an extremely popular beat that collects and reports various system-
level metrics for various systems and platforms.
Beats
 Heartbeat
 Heartbeat is meant for “uptime monitoring.”
 Auditbeat
 Auditbeat is a beat that is also still defined as being in experimental stages,
and can be used for auditing user and process activity on your Linux servers.
 Winlogbeat
 Winlogbeat will only interest Windows sysadmins or engineers as it is a beat
designed specifically for collecting Windows Event logs
Devops - Continuous Integration And Continuous Development
Devops - Continuous Integration And Continuous Development
Stages
Stages
Stages
ANY QUESTIONS ?
THANKS

More Related Content

PPTX
CI/CD Overview
An Nguyen
 
PDF
Cloud Native Application
VMUG IT
 
PPTX
Introduction to CI/CD
Steve Mactaggart
 
PDF
CI/CD (DevOps) 101
Hazzim Anaya
 
PPTX
DevOps introduction
Mettje Heegstra
 
PPTX
DevOps introduction
Christian F. Nissen
 
PPSX
Microservices, DevOps & SRE
Araf Karsh Hamid
 
CI/CD Overview
An Nguyen
 
Cloud Native Application
VMUG IT
 
Introduction to CI/CD
Steve Mactaggart
 
CI/CD (DevOps) 101
Hazzim Anaya
 
DevOps introduction
Mettje Heegstra
 
DevOps introduction
Christian F. Nissen
 
Microservices, DevOps & SRE
Araf Karsh Hamid
 

What's hot (20)

PPT
CI and CD with Jenkins
Martin Málek
 
PPTX
Building a DevOps organization
Zinnov
 
PPTX
Micro services Architecture
Araf Karsh Hamid
 
PPSX
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid
 
PPTX
Why to Cloud Native
Karthik Gaekwad
 
PDF
"DevOps > CI+CD "
Innovation Roots
 
PPTX
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Janusz Nowak
 
PPTX
DevOps - an Agile Perspective (at Scale)
Brad Appleton
 
PDF
Best Practices with Azure Kubernetes Services
QAware GmbH
 
PPTX
Azure
Kiran Bavariya
 
PDF
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
Edureka!
 
PPTX
Introducing DevOps
Nishanth K Hydru
 
PDF
Orchestration and provisioning architecture for effective service management
Alan McSweeney
 
PPTX
Transforming Organizations with CI/CD
Cprime
 
PDF
How to implement DevOps in your Organization
Dalibor Blazevic
 
PPTX
GitHub Copilot.pptx
Luis Beltran
 
PDF
Red Hat OpenShift V3 Overview and Deep Dive
Greg Hoelzer
 
PDF
Six Signs You Need Platform Engineering
Weaveworks
 
PDF
IaaS, SaaS, PasS : Cloud Computing
Software Park Thailand
 
CI and CD with Jenkins
Martin Málek
 
Building a DevOps organization
Zinnov
 
Micro services Architecture
Araf Karsh Hamid
 
Microservices Architecture - Cloud Native Apps
Araf Karsh Hamid
 
Why to Cloud Native
Karthik Gaekwad
 
"DevOps > CI+CD "
Innovation Roots
 
Continues Integration and Continuous Delivery with Azure DevOps - Deploy Anyt...
Janusz Nowak
 
DevOps - an Agile Perspective (at Scale)
Brad Appleton
 
Best Practices with Azure Kubernetes Services
QAware GmbH
 
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
Edureka!
 
Introducing DevOps
Nishanth K Hydru
 
Orchestration and provisioning architecture for effective service management
Alan McSweeney
 
Transforming Organizations with CI/CD
Cprime
 
How to implement DevOps in your Organization
Dalibor Blazevic
 
GitHub Copilot.pptx
Luis Beltran
 
Red Hat OpenShift V3 Overview and Deep Dive
Greg Hoelzer
 
Six Signs You Need Platform Engineering
Weaveworks
 
IaaS, SaaS, PasS : Cloud Computing
Software Park Thailand
 
Ad

Similar to Devops - Continuous Integration And Continuous Development (20)

PDF
CI/CD Tools That Will Revolutionize Your DevOps Process
Shubham Joshi
 
PDF
TMF2014 CI-CD Workshop Michael Palotas
KJR
 
PDF
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Michael Palotas
 
PDF
Top CI/CD Tools Every QA Automation Engineer Should Use
digitaljignect
 
PDF
Path To Continuous Test Automation Using CICD Pipeline.pdf
pCloudy
 
PDF
Building an Enterprise Continuous Delivery machine around Jenkins
XebiaLabs
 
PPTX
Rising Above the Noise: Continuous Integration, Delivery and DevOps
IBM UrbanCode Products
 
PPT
Continuous deployment steve povilaitis
Steve Povilaitis
 
PDF
Getting to Walk with DevOps
Eklove Mohan
 
PPTX
Devops architecture
Ojasvi Jagtap
 
PPTX
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
PPTX
Test-Driven-Development for Networking: Making CI Work for You by Colin McNam...
DevOps4Networks
 
PPTX
automations tools devops subjectcse.pptx
myownmail687
 
PPTX
Continuous Integrations & Deployments
Shinu Suresh
 
PPTX
Agile Network India | Continuous Integration & Continuous Deployment & Automa...
AgileNetwork
 
PDF
Into The Box 2018 CI Deep Dive
Ortus Solutions, Corp
 
PDF
Continuous Testing
jaredrrichardson
 
PPTX
Continuous Integration (CI) is about more than releases
Chris Riley ☁
 
PPTX
Kevin Glavin - Continuous Integration, Continuous Delivery, and Deployment (C...
centralohioissa
 
PPTX
Introduction to Continuous Integration
Zahra Golmirzaei
 
CI/CD Tools That Will Revolutionize Your DevOps Process
Shubham Joshi
 
TMF2014 CI-CD Workshop Michael Palotas
KJR
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Michael Palotas
 
Top CI/CD Tools Every QA Automation Engineer Should Use
digitaljignect
 
Path To Continuous Test Automation Using CICD Pipeline.pdf
pCloudy
 
Building an Enterprise Continuous Delivery machine around Jenkins
XebiaLabs
 
Rising Above the Noise: Continuous Integration, Delivery and DevOps
IBM UrbanCode Products
 
Continuous deployment steve povilaitis
Steve Povilaitis
 
Getting to Walk with DevOps
Eklove Mohan
 
Devops architecture
Ojasvi Jagtap
 
CI, CD -Tools to integrate without manual intervention
ajayrajaganeshkayala
 
Test-Driven-Development for Networking: Making CI Work for You by Colin McNam...
DevOps4Networks
 
automations tools devops subjectcse.pptx
myownmail687
 
Continuous Integrations & Deployments
Shinu Suresh
 
Agile Network India | Continuous Integration & Continuous Deployment & Automa...
AgileNetwork
 
Into The Box 2018 CI Deep Dive
Ortus Solutions, Corp
 
Continuous Testing
jaredrrichardson
 
Continuous Integration (CI) is about more than releases
Chris Riley ☁
 
Kevin Glavin - Continuous Integration, Continuous Delivery, and Deployment (C...
centralohioissa
 
Introduction to Continuous Integration
Zahra Golmirzaei
 
Ad

Recently uploaded (20)

PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PPT
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
PDF
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
PDF
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PDF
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
PPTX
Coupa-Overview _Assumptions presentation
annapureddyn
 
PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
Software Development Methodologies in 2025
KodekX
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PDF
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PPTX
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
Coupa-Kickoff-Meeting-Template presentai
annapureddyn
 
A Strategic Analysis of the MVNO Wave in Emerging Markets.pdf
IPLOOK Networks
 
Unlocking the Future- AI Agents Meet Oracle Database 23ai - AIOUG Yatra 2025.pdf
Sandesh Rao
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
Advances in Ultra High Voltage (UHV) Transmission and Distribution Systems.pdf
Nabajyoti Banik
 
Coupa-Overview _Assumptions presentation
annapureddyn
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Software Development Methodologies in 2025
KodekX
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Cloud-Migration-Best-Practices-A-Practical-Guide-to-AWS-Azure-and-Google-Clou...
Artjoker Software Development Company
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
IoT Sensor Integration 2025 Powering Smart Tech and Industrial Automation.pptx
Rejig Digital
 

Devops - Continuous Integration And Continuous Development

  • 1. DevOps - CI/CD - Presented by Sandeep Kumar J Software Engineer Jouve India Private Limited
  • 2. Agenda  DevOps  Continuous Development  Continuous Testing  Continuous Integration  Continuous Deployment  Continuous Testing
  • 4. DevOps  First it was Waterfall, next it was Agile, and now it's DevOps. This is how modern developers approach building great products.  Waterfall:  - Delivery at End  - Cost, Time will be high due to last minute discovery/change  Agile:  - Sprint based release  - More Human Effort  - Again Cost and Time can be high if its properly not executed or planned  Devops-  - Continous Integration and Delivery  - Risk of last minute surprise is very less due to early stage tunings
  • 5. Pipeline - CI/CD in High Level
  • 6. Continuous Development  This is the phase which involves ‘planning‘ and ‘coding‘ of the software application’s functionality. There are no tools for planning as such, but there are a number of tools for maintaining the code.  The code can be written in any language, but it is maintained by using Version Control tools. These are the Continuous Development DevOps tools. The most popular tools used are: Git, SVN, Mercurial, CVS and JIRA.
  • 7. Continuous Development  So why is it important to main versions of the code? Which of the Dev vs Ops problem does it solve? Let’s understand that first.  Versions are maintained (in a central repository), to hold a single source of truth. So that all the developers can collaborate on the ‘latest committed’ code, and even operations can have access to that same code when they plan to make a release.  Whenever a mishap happens during a release, or even if there are lots of bugs in the code (faulty feature), there is nothing to worry. Ops can quickly rollback the deployed code and thus revert back to the previous stable state.
  • 8. Continuous Testing  When the code is developed, it is maddening to release it straight to deployment. The code should first be tested for bugs and performance.  Automation testing is the answer to a lot of cries of manual testers. Tools like Selenium, TestNG, JUnit/NUnit are used to automate the execution of our test cases. So, what are its benefits?  Automation testing saves a lot of time, effort and labor for executing the tests manually.  Besides that, report generation is a big plus. The task of evaluating which test cases failed in a test suite gets simpler.
  • 9. Continuous Testing  Selenium does the automation testing, and the reports are generated by TestNG. But to automate this entire testing phase, we need a trigger right? So, what is the trigger? This is where the role of Continuous Integration tools like Jenkins coming into the picture.
  • 11. Continuous Integration  With continuous integration, developers frequently integrate their code into a main branch of a common repository.  The big idea here is to reduce integration costs by having developers do it sooner and more frequently. In practice, a developer will often discover boundary conflicts between new and existing code at the time of integration.  The goal of CI is to refine integration into a simple, easily-repeatable everyday development task that will serve to reduce overall build costs and reveal defects early in the cycle.  To reduce friction during integration tasks, continuous integration relies on test suites and an automated test execution.  Most popular CI tool in the market is Jenkins. but also available in other tools such as GitLab CI,
  • 12. Continuous Integration  It is the CI tools which orchestrates the automation of tools falling under other DevOps lifecycle phases. Be it, Continuous Development tools, or Continuous Testing tools, or Continuous Deployment tools, or even Continuous Monitoring tools, the Continuous Integration tools can be integrated with all of them.
  • 13. Continuous Integration  CD - When integrated with Git/ SVN, Jenkins can schedule jobs (pulling the code from shared repositories) automatically and make it ready for builds and testing (Continuous Development). Jenkins can build jobs either at scheduled times of day or when ever there is a commit pushed to the central repository.  CT- When integrated with testing tools like Selenium, we can achieve Continuous Testing. How? The developed code can be built using tools like Maven/ Ant/ Gradle.  When the code is built, then Selenium can automate the execution of that code. How does it automate it? By creating a suite of test cases and executing the test cases one after the other.  The role of Jenkins/ Hudson/ Bamboo here would be to schedule/ automate “Selenium to automate test case execution”.  CD - When integrated with Continuous Deployment tools, Jenkins/ Hudson/ Bamboo can trigger thedeployments planned by configuration management/ containerization tools.  CM - And finally, Jenkins/ Hudson can be integrated with monitoring tools like Splunk/ ELK/ Nagios/ NewRelic, to continuously monitor the status & performance of the server where the deployments have been made.
  • 14. Continuous Deployment  Configuration Management tools or Containerization tools. Both set of tools here help in achieving Continuous Deployment (CD).  In simpler words, it is the act of releasing deployments to servers, scheduling updates on all servers and most importantly keeping the configurations consistent across all the severs  For this, we have tools like Puppet, Chef, Ansible, SaltStack and more. But the best tool here is Puppet. Puppet & the other CM tools work based on the master-slave architecture. When there is a deployment made to the master, the master is responsible for replicating those changes across all the slaves
  • 15. Continuous Deployment  Containerization tools are other set of tools which help in maintaining consistency across the environments where the application is developed, tested and deployed. It eliminates any chance of errors/ failure in production environment by packaging and replicating the same dependencies and packages used in development/ testing/ staging environment and The clear winner here is Docker.  Amazon ECS, Azure Container Service and Google Container Engine are a few of the cloud services that have started radical support for Docker containers.
  • 19. Continuous Monitoring  Monitoring is as important as developing the application because there will always be a chance of bugs which escape undetected during the testing phase.  Splunk, ELK Stack, Nagios, Sensu, NewRelic are some of the popular tools for monitoring. When used in combination with Jenkins, we achieve Continuous Monitoring.  Monitoring tools also report failure/ unfavorable conditions before your clients/ customers get to experience the faulty features.  Splunk and ELK stack are the two tools which is a major competitors.
  • 20. Continuous Monitoring  Splunk is a (paid tool). But, this also effectively means that working on Splunk is very easy.  ELK stack however, is a combination of 3 open-source tools: ElasticSearch, LogStash & Kibana. It maybe free, but setting it up is not as easy as a commercial tool like Splunk.
  • 21. Beats  Beats are a collection of lightweight (resource efficient, no dependencies, small) and open source log shippers that act as agents installed on the different servers in your infrastructure for collecting logs or metrics.  Types: Filebeat Filebeat, as its name implies, is used for collecting and shipping log files, and is also the most commonly used beat. Packetbeat A network packet analyzer, Packetbeat was the first beat introduced. Packetbeat captures network traffic between servers, and as such can be used for application and performance monitoring. Metricbeat Metricbeat is an extremely popular beat that collects and reports various system- level metrics for various systems and platforms.
  • 22. Beats  Heartbeat  Heartbeat is meant for “uptime monitoring.”  Auditbeat  Auditbeat is a beat that is also still defined as being in experimental stages, and can be used for auditing user and process activity on your Linux servers.  Winlogbeat  Winlogbeat will only interest Windows sysadmins or engineers as it is a beat designed specifically for collecting Windows Event logs