SlideShare a Scribd company logo
Continuous Everything
Soumyak Bhattacharyya
Product Developer
DevOps Enthusiast
Simple ideas are easier to understand. Ideas that are
easier to understand are repeated. Ideas that are
repeated change the world.
Continuous Integration
Continuous Integration is a software development practice where members of a team integrate their work
frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each
integration is verified by an automated build (including test) to detect integration errors as quickly as
possible.
Principles
1. Maintain a Single Source Repository
2. Make Your Build Automated & Self-Testing
3. Everyone Commits To the Mainline Every Day
4. Every Commit Should Build the Mainline on an Integration Machine
5. Fix Broken Builds Immediately
6. Keep Build Fast
7. Test Environment Is A Clone Of Production Environment
8. Binary Lives In Binary Repository
9. Radiate Information
10. Automate Deployment
Reference : https://martinfowler.com/articles/continuousIntegration.html
Cost
Risk
Bugs
Quality
Speed
Visibility
Outcome
Continuous Integration

Recommended for you

Automated testing with Cypress
Automated testing with CypressAutomated testing with Cypress
Automated testing with Cypress

This document introduces Cypress, an end-to-end testing framework for web applications. It discusses why Cypress is useful for testing, how to get started by installing Cypress and writing test scripts, and provides tips for selecting elements and handling dynamic content. Key aspects covered include planning test cases, writing tests for common pages like login and article creation, and using the Cypress testing library to write robust tests.

testingsoftware testingcypress
Selenoid: browsers in containers
Selenoid: browsers in containersSelenoid: browsers in containers
Selenoid: browsers in containers

Selenoid is a tool for running Selenium tests in isolated browser containers. It allows running thousands of browsers across multiple data centers with high throughput. Selenoid containers include pre-installed browser versions and drivers so tests can be run with a single command. This simplifies setup and allows easy maintenance of browser versions and compatibility. Selenoid is lightweight, scalable, and provides centralized logging and usage statistics which makes it suitable for large test clusters running 24/7.

dockerselenoidselenium
Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)

Cypress framework is a JavaScript-based end-to-end testing framework built on top of Mocha – a feature-rich JavaScript test framework running on and in the browser, making asynchronous testing simple and convenient. Cypress is like Protractor for Angular. In this talk, we will talk about how to write cypress test from scratch and some best practice.

angularcypresse2e
CI Server
Binary RepositoryStatic Analyzer
Deployment
Environment
Version Control System
VM VM
Conceptual Flow
Check - In
Pull
Inspect
Build – Run Unit Test
Push
Deploy
Developers
Continuous Integration
Jenkins
ArtifactorySONAR
TomcatGitHub
VM VM
Typical Implementation
Check - In
Check Out
Inspect
Build – Run Unit Test
Push
Deploy
Developers
Pull
Continuous Integration
Job Configuration Slave Plugin
Build Test Inspect Deploy
Cloud Pipeline Administration Notification
Jenkins
Continuous Integration
6000 + Downloads per month
1500 + Subscriber to mailing list
60 + Open Source Plugin
150,000 + Downloads
• Code Duplication
• Bad Distribution of Complexity
• Spaghetti Design
• Lack of Unit Test
• Insufficient Coding Standard
• Potential Bugs
• Inadequate Comment … and so on
https://www.sonarsource.com/
Continuous Inspection

Recommended for you

QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...

This presentation introduces several modern features of the ProtractorJS framework, including async/await, TypeScript support, and the blocking proxy. It notes that control flow is being deprecated in favor of async/await. It also discusses features of webdriver-manager like installing mobile apps and drivers, and blocking proxy for automatically waiting for Angular across tests.

#qafest#qafestua#qafest2017
Jenkins workflows and Best Practices
Jenkins workflows and Best PracticesJenkins workflows and Best Practices
Jenkins workflows and Best Practices

This document discusses CI/CD workflows and best practices using Jenkins. It explains that Jenkins helps automate the software development process by building code whenever commits are pushed to version control. Good CI practices include integrating with source control, running all tests, and providing feedback via chat systems. The document provides examples of basic, agile team, and advanced CI workflows and recommendations for configuring Jenkins, including using plugins, securing authentication, and proxying Jenkins within a VPN.

best practicesbuild engineeringjenkins
Cypress report
Cypress reportCypress report
Cypress report

It is a presentation to help software developers get started with a testing platform Cypress. I have created it personally and given the most basics of explanation regarding the new concepts.

cypresssoftware testingpresentation
1. Integrate with CI Engines, Build Tools (Maven / Gradle)
2. Host and proxy
1. Maven Dependencies
2. Docker Images
3. NuGet packages
4. node.js packages
5. Bower registry
6. PyPI distributions
7. Microsoft .NET ecosystem
3. Watch / Filter / Search for artifacts
Deploy
1. To facilitate artifact storage &
proxy
2. To avoid hitting public
remote repository
3. To avoid being inefficient,
unreliable and non – secure
4. To deploy, manage and share
local artifacts
5. To establish full control on
artifact resolution
6. To build once and deploy
many times
RepositoryManager
Continuous Integration (Produce binary)
Features
Demo Time
Continuous Delivery
Why Do We Need Continuous Delivery
Cycle Time : Act phase of OODA loop
Cycle Time is the reaction time of Organization
OODA loop By John Boyd
Continuous Delivery

Recommended for you

Jenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命があるJenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命がある

https://www.meetup.com/ja-JP/Tokyo-Jenkins-Area-Meetup/events/240833004/ 『第10回 Jenkins勉強会』の発表資料です。 Jenkinsfileのlintと自作npmパッケージ "jflint" について話しました。 https://www.npmjs.com/package/jflint

cijenkins
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices

Best practices for writing end-to-end testing in Cypress including organizing tests, testing logging in through authorization, and controlling state.

cypressjavascripttesting
Selenium and Sauce Labs
Selenium and Sauce LabsSelenium and Sauce Labs
Selenium and Sauce Labs

An overview of Selenium, including Selenium IDE, Selenium RC, Selenium Grid, and Sauce OnDemand (A cloud-hosted Selenium test infrastructure service). Also covers an overview of upcoming features in Selenium 2, and how to best use Selenium: use of the Page Object patter, and how to use with continuous integration.

 
by hugs
sauce ondemandsaucelabscloud testing
Continuous Delivery (vs. Deployment)
Continuous Delivery
Conceptual Flow
Continuous Integration
Continuous Delivery Continuous Deployment
Continuous Delivery
Compile
Source code
SCM
Developer
Generate & write Unit
test
Test Locally
Check-In
Integrated
Scripts / Jobs
Source code for
Application & Unit Test
cases
Code Quality
Analysis/CCAP
Run Unit Test
(Semantic &
Syntax)
Build VM
Test VM
Phase -1
Compile/Code
Integration
Set-up
environment
Deploy
Application
Smoke Test
Run component
Test
Test VM
Set-up
environment
Deploy
Application
Smoke Test
Run Functional
UI Test
Cloud / Docker
Archive
Artifacts
Tear Down
/ Clean-up
VM Pool
On- DemandCI Engine
Use Pooled VMs
Docker Containers
Phase -2
Code Analysis & Basic Unit Test
Run
Phase -4
Validate & Feedback
Phase -3
Set Up
Phase -5
Teardown
Commit
Commit
Triggered/Schedule
d
Release Management Platform
OS
Middleware
Utilities
Provisioned VMs
Provision/De-provision
VMPipeline
Release
Dashboard
Automated
Rollback
Agentless
Architecture
Provisioning Workflow Audit Extensibility Self Service
Demo Time

Recommended for you

Welcome to Jenkins
Welcome to JenkinsWelcome to Jenkins
Welcome to Jenkins

This document provides steps to set up Jenkins for continuous integration, including installing Java, Git, and configuring a GitHub account. It then explains how to create a Jenkins job that will build a project from a GitHub repository, run tests, and generate code coverage reports on each commit. The job is configured to pull code from GitHub, run Maven goals to build and test the project, and publish JUnit test reports, JavaDocs, and a Cobertura code coverage report.

continuous-integrationjenkins
Async webdriverjs
Async webdriverjsAsync webdriverjs
Async webdriverjs

This document discusses using JavaScript for testing and addresses some of its challenges like callback hell and the pyramid of doom. It presents solutions like promise managers and async/await that help simplify asynchronous code. It also provides examples of using WebDriverJs with promises and async/await in tests to make the code more readable and maintainable.

webdriverseleniumwebdriverjs
End to end test automation with cypress
End to end test automation with cypressEnd to end test automation with cypress
End to end test automation with cypress

Cypress is an open-source JavaScript-based test automation framework built on NodeJS. It operates directly in the browser so developers can easily work with it. Cypress runs tests written in JavaScript in an interactive window and supports various types of testing including end-to-end, unit, integration, visual, and API testing. Since it is based on NodeJS, Cypress requires the Node runtime to execute tests.

Parting Note !!!
Maturity Model
Best Practices
Tools
Q & A
Thanks !!!

More Related Content

What's hot

Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End Engineers
Sergey Bolshchikov
 
e2e testing with cypress
e2e testing with cypresse2e testing with cypress
e2e testing with cypress
Tomasz Bak
 
Automated-Testing-inside-containers
Automated-Testing-inside-containersAutomated-Testing-inside-containers
Automated-Testing-inside-containers
Manoj Kumar Kumar
 
Automated testing with Cypress
Automated testing with CypressAutomated testing with Cypress
Automated testing with Cypress
Yong Shean Chong
 
Selenoid: browsers in containers
Selenoid: browsers in containersSelenoid: browsers in containers
Selenoid: browsers in containers
Ivan Krutov
 
Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)
Hong Tat Yew
 
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QAFest
 
Jenkins workflows and Best Practices
Jenkins workflows and Best PracticesJenkins workflows and Best Practices
Jenkins workflows and Best Practices
Kenichi Shibata
 
Cypress report
Cypress reportCypress report
Cypress report
Adarsh
 
Jenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命があるJenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命がある
Jumpei Miyata
 
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices
Brian Mann
 
Selenium and Sauce Labs
Selenium and Sauce LabsSelenium and Sauce Labs
Selenium and Sauce Labs
hugs
 
Welcome to Jenkins
Welcome to JenkinsWelcome to Jenkins
Welcome to Jenkins
Somkiat Puisungnoen
 
Async webdriverjs
Async webdriverjsAsync webdriverjs
Async webdriverjs
Manoj Kumar Kumar
 
End to end test automation with cypress
End to end test automation with cypressEnd to end test automation with cypress
End to end test automation with cypress
PankajSingh184960
 
QA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. SeleniumQA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. Selenium
Lyudmil Latinov
 
Jenkins Best Practices
Jenkins Best PracticesJenkins Best Practices
Jenkins Best Practices
Gergely Brautigam
 
Introduction to Integration Testing With Cypress
Introduction to Integration Testing With CypressIntroduction to Integration Testing With Cypress
Introduction to Integration Testing With Cypress
Erez Cohen
 
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Rafał Leszko
 
Jenkins user conference 2011
Jenkins user conference 2011Jenkins user conference 2011
Jenkins user conference 2011
Kohsuke Kawaguchi
 

What's hot (20)

Continuous Delivery for Front-End Engineers
Continuous Delivery for Front-End EngineersContinuous Delivery for Front-End Engineers
Continuous Delivery for Front-End Engineers
 
e2e testing with cypress
e2e testing with cypresse2e testing with cypress
e2e testing with cypress
 
Automated-Testing-inside-containers
Automated-Testing-inside-containersAutomated-Testing-inside-containers
Automated-Testing-inside-containers
 
Automated testing with Cypress
Automated testing with CypressAutomated testing with Cypress
Automated testing with Cypress
 
Selenoid: browsers in containers
Selenoid: browsers in containersSelenoid: browsers in containers
Selenoid: browsers in containers
 
Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)Introduction to cypress in Angular (Chinese)
Introduction to cypress in Angular (Chinese)
 
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
QA Fest 2017. Александр Хотемской. Современные возможности в организации Prot...
 
Jenkins workflows and Best Practices
Jenkins workflows and Best PracticesJenkins workflows and Best Practices
Jenkins workflows and Best Practices
 
Cypress report
Cypress reportCypress report
Cypress report
 
Jenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命があるJenkinsfileのlintで救える命がある
Jenkinsfileのlintで救える命がある
 
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices
 
Selenium and Sauce Labs
Selenium and Sauce LabsSelenium and Sauce Labs
Selenium and Sauce Labs
 
Welcome to Jenkins
Welcome to JenkinsWelcome to Jenkins
Welcome to Jenkins
 
Async webdriverjs
Async webdriverjsAsync webdriverjs
Async webdriverjs
 
End to end test automation with cypress
End to end test automation with cypressEnd to end test automation with cypress
End to end test automation with cypress
 
QA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. SeleniumQA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. Selenium
 
Jenkins Best Practices
Jenkins Best PracticesJenkins Best Practices
Jenkins Best Practices
 
Introduction to Integration Testing With Cypress
Introduction to Integration Testing With CypressIntroduction to Integration Testing With Cypress
Introduction to Integration Testing With Cypress
 
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017Continuous Delivery - Voxxed Days Cluj-Napoca 2017
Continuous Delivery - Voxxed Days Cluj-Napoca 2017
 
Jenkins user conference 2011
Jenkins user conference 2011Jenkins user conference 2011
Jenkins user conference 2011
 

Similar to Continuous Everything

Continuous Everything v2.0
Continuous Everything v2.0Continuous Everything v2.0
Continuous Everything v2.0
Soumyak Bhattacharyya
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
Jasmine Conseil
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
Sunil Dalal
 
Part 2 improving your software development v1.0
Part 2   improving your software development v1.0Part 2   improving your software development v1.0
Part 2 improving your software development v1.0
Jasmine Conseil
 
Agile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengAgile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard Cheng
Excella
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
Dennys Hsieh
 
Hudson
HudsonHudson
Hudson
8x8
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
IndicThreads
 
Intro to Continuous Integration
Intro to Continuous IntegrationIntro to Continuous Integration
Intro to Continuous Integration
Tal Mor (Moshayov)
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
Steve Povilaitis
 
Super chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeploymentsSuper chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeployments
Nikola Gotsev
 
Supercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration DeploymentsSupercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration Deployments
Nikola Gotsev
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
Abhay Kumar
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using Docker
Michael Irwin
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
shahidafrith
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
MahmoudAlnmr1
 
Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
bartlowe
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
Talentica Software
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
cPrime | Project Management | Agile | Consulting | Staffing | Training
 
Continuous Integration at T3CON08
Continuous Integration at T3CON08Continuous Integration at T3CON08
Continuous Integration at T3CON08
Sebastian Kurfürst
 

Similar to Continuous Everything (20)

Continuous Everything v2.0
Continuous Everything v2.0Continuous Everything v2.0
Continuous Everything v2.0
 
Presentation 1 open source tools in continuous integration environment v1.0
Presentation 1   open source tools in continuous integration environment v1.0Presentation 1   open source tools in continuous integration environment v1.0
Presentation 1 open source tools in continuous integration environment v1.0
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Part 2 improving your software development v1.0
Part 2   improving your software development v1.0Part 2   improving your software development v1.0
Part 2 improving your software development v1.0
 
Agile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard ChengAgile Engineering Best Practices by Richard Cheng
Agile Engineering Best Practices by Richard Cheng
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
 
Hudson
HudsonHudson
Hudson
 
Continuous Integration: A Case Study
Continuous Integration: A Case StudyContinuous Integration: A Case Study
Continuous Integration: A Case Study
 
Intro to Continuous Integration
Intro to Continuous IntegrationIntro to Continuous Integration
Intro to Continuous Integration
 
Continuous deployment steve povilaitis
Continuous deployment   steve povilaitisContinuous deployment   steve povilaitis
Continuous deployment steve povilaitis
 
Super chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeploymentsSuper chargeyourcontiniousintegrationdeployments
Super chargeyourcontiniousintegrationdeployments
 
Supercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration DeploymentsSupercharge Your Continuous Integration Deployments
Supercharge Your Continuous Integration Deployments
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Intro to CI/CD using Docker
Intro to CI/CD using DockerIntro to CI/CD using Docker
Intro to CI/CD using Docker
 
jenkins.pdf
jenkins.pdfjenkins.pdf
jenkins.pdf
 
Jenkins_1679702972.pdf
Jenkins_1679702972.pdfJenkins_1679702972.pdf
Jenkins_1679702972.pdf
 
Using Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health NewUsing Continuous Integration To Ensure Project Health New
Using Continuous Integration To Ensure Project Health New
 
Continous Integration: A Case Study
Continous Integration: A Case StudyContinous Integration: A Case Study
Continous Integration: A Case Study
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
 
Continuous Integration at T3CON08
Continuous Integration at T3CON08Continuous Integration at T3CON08
Continuous Integration at T3CON08
 

Recently uploaded

Conservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic RegenerationConservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic Regeneration
PriyankaKarn3
 
Chlorine and Nitric Acid application, properties, impacts.pptx
Chlorine and Nitric Acid application, properties, impacts.pptxChlorine and Nitric Acid application, properties, impacts.pptx
Chlorine and Nitric Acid application, properties, impacts.pptx
yadavsuyash008
 
Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.
Tool and Die Tech
 
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdfGUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
ProexportColombia1
 
Rotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptxRotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptx
surekha1287
 
Lecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............pptLecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............ppt
RujanTimsina1
 
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
IJAEMSJORNAL
 
Press Tool and It's Primary Components.pdf
Press Tool and It's Primary Components.pdfPress Tool and It's Primary Components.pdf
Press Tool and It's Primary Components.pdf
Tool and Die Tech
 
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
sharvaridhokte
 
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K SchemeMSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
Anwar Patel
 
Online music portal management system project report.pdf
Online music portal management system project report.pdfOnline music portal management system project report.pdf
Online music portal management system project report.pdf
Kamal Acharya
 
Introduction to IP address concept - Computer Networking
Introduction to IP address concept - Computer NetworkingIntroduction to IP address concept - Computer Networking
Introduction to IP address concept - Computer Networking
Md.Shohel Rana ( M.Sc in CSE Khulna University of Engineering & Technology (KUET))
 
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model Safe
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model SafeRohini @ℂall @Girls ꧁❤ 9873777170 ❤���VIP Yogita Mehra Top Model Safe
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model Safe
binna singh$A17
 
Germany Offshore Wind 010724 RE (1) 2 test.pptx
Germany Offshore Wind 010724 RE (1) 2 test.pptxGermany Offshore Wind 010724 RE (1) 2 test.pptx
Germany Offshore Wind 010724 RE (1) 2 test.pptx
rebecca841358
 
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
VICTOR MAESTRE RAMIREZ
 
How to Manage Internal Notes in Odoo 17 POS
How to Manage Internal Notes in Odoo 17 POSHow to Manage Internal Notes in Odoo 17 POS
How to Manage Internal Notes in Odoo 17 POS
Celine George
 
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
PradeepKumarSK3
 
Unit 1 Information Storage and Retrieval
Unit 1 Information Storage and RetrievalUnit 1 Information Storage and Retrieval
Unit 1 Information Storage and Retrieval
KishorMahale5
 
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdfOCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
Muanisa Waras
 
Quadcopter Dynamics, Stability and Control
Quadcopter Dynamics, Stability and ControlQuadcopter Dynamics, Stability and Control
Quadcopter Dynamics, Stability and Control
Blesson Easo Varghese
 

Recently uploaded (20)

Conservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic RegenerationConservation of Taksar through Economic Regeneration
Conservation of Taksar through Economic Regeneration
 
Chlorine and Nitric Acid application, properties, impacts.pptx
Chlorine and Nitric Acid application, properties, impacts.pptxChlorine and Nitric Acid application, properties, impacts.pptx
Chlorine and Nitric Acid application, properties, impacts.pptx
 
Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.Trends in Computer Aided Design and MFG.
Trends in Computer Aided Design and MFG.
 
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdfGUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
GUIA_LEGAL_CHAPTER_4_FOREIGN TRADE CUSTOMS.pdf
 
Rotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptxRotary Intersection in traffic engineering.pptx
Rotary Intersection in traffic engineering.pptx
 
Lecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............pptLecture 3 Biomass energy...............ppt
Lecture 3 Biomass energy...............ppt
 
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
Best Practices of Clothing Businesses in Talavera, Nueva Ecija, A Foundation ...
 
Press Tool and It's Primary Components.pdf
Press Tool and It's Primary Components.pdfPress Tool and It's Primary Components.pdf
Press Tool and It's Primary Components.pdf
 
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
22519 - Client-Side Scripting Language (CSS) chapter 1 notes .pdf
 
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K SchemeMSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme MSBTE K Scheme
 
Online music portal management system project report.pdf
Online music portal management system project report.pdfOnline music portal management system project report.pdf
Online music portal management system project report.pdf
 
Introduction to IP address concept - Computer Networking
Introduction to IP address concept - Computer NetworkingIntroduction to IP address concept - Computer Networking
Introduction to IP address concept - Computer Networking
 
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model Safe
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model SafeRohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model Safe
Rohini @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Yogita Mehra Top Model Safe
 
Germany Offshore Wind 010724 RE (1) 2 test.pptx
Germany Offshore Wind 010724 RE (1) 2 test.pptxGermany Offshore Wind 010724 RE (1) 2 test.pptx
Germany Offshore Wind 010724 RE (1) 2 test.pptx
 
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
Advances in Detect and Avoid for Unmanned Aircraft Systems and Advanced Air M...
 
How to Manage Internal Notes in Odoo 17 POS
How to Manage Internal Notes in Odoo 17 POSHow to Manage Internal Notes in Odoo 17 POS
How to Manage Internal Notes in Odoo 17 POS
 
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
21EC63_Module1B.pptx VLSI design 21ec63 MOS TRANSISTOR THEORY
 
Unit 1 Information Storage and Retrieval
Unit 1 Information Storage and RetrievalUnit 1 Information Storage and Retrieval
Unit 1 Information Storage and Retrieval
 
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdfOCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
OCS Training - Rig Equipment Inspection - Advanced 5 Days_IADC.pdf
 
Quadcopter Dynamics, Stability and Control
Quadcopter Dynamics, Stability and ControlQuadcopter Dynamics, Stability and Control
Quadcopter Dynamics, Stability and Control
 

Continuous Everything

  • 2. Simple ideas are easier to understand. Ideas that are easier to understand are repeated. Ideas that are repeated change the world.
  • 4. Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Principles 1. Maintain a Single Source Repository 2. Make Your Build Automated & Self-Testing 3. Everyone Commits To the Mainline Every Day 4. Every Commit Should Build the Mainline on an Integration Machine 5. Fix Broken Builds Immediately 6. Keep Build Fast 7. Test Environment Is A Clone Of Production Environment 8. Binary Lives In Binary Repository 9. Radiate Information 10. Automate Deployment Reference : https://martinfowler.com/articles/continuousIntegration.html Cost Risk Bugs Quality Speed Visibility Outcome Continuous Integration
  • 5. CI Server Binary RepositoryStatic Analyzer Deployment Environment Version Control System VM VM Conceptual Flow Check - In Pull Inspect Build – Run Unit Test Push Deploy Developers Continuous Integration
  • 6. Jenkins ArtifactorySONAR TomcatGitHub VM VM Typical Implementation Check - In Check Out Inspect Build – Run Unit Test Push Deploy Developers Pull Continuous Integration
  • 7. Job Configuration Slave Plugin Build Test Inspect Deploy Cloud Pipeline Administration Notification Jenkins Continuous Integration
  • 8. 6000 + Downloads per month 1500 + Subscriber to mailing list 60 + Open Source Plugin 150,000 + Downloads • Code Duplication • Bad Distribution of Complexity • Spaghetti Design • Lack of Unit Test • Insufficient Coding Standard • Potential Bugs • Inadequate Comment … and so on https://www.sonarsource.com/ Continuous Inspection
  • 9. 1. Integrate with CI Engines, Build Tools (Maven / Gradle) 2. Host and proxy 1. Maven Dependencies 2. Docker Images 3. NuGet packages 4. node.js packages 5. Bower registry 6. PyPI distributions 7. Microsoft .NET ecosystem 3. Watch / Filter / Search for artifacts Deploy 1. To facilitate artifact storage & proxy 2. To avoid hitting public remote repository 3. To avoid being inefficient, unreliable and non – secure 4. To deploy, manage and share local artifacts 5. To establish full control on artifact resolution 6. To build once and deploy many times RepositoryManager Continuous Integration (Produce binary) Features
  • 12. Why Do We Need Continuous Delivery Cycle Time : Act phase of OODA loop Cycle Time is the reaction time of Organization OODA loop By John Boyd Continuous Delivery
  • 14. Continuous Delivery Conceptual Flow Continuous Integration Continuous Delivery Continuous Deployment
  • 15. Continuous Delivery Compile Source code SCM Developer Generate & write Unit test Test Locally Check-In Integrated Scripts / Jobs Source code for Application & Unit Test cases Code Quality Analysis/CCAP Run Unit Test (Semantic & Syntax) Build VM Test VM Phase -1 Compile/Code Integration Set-up environment Deploy Application Smoke Test Run component Test Test VM Set-up environment Deploy Application Smoke Test Run Functional UI Test Cloud / Docker Archive Artifacts Tear Down / Clean-up VM Pool On- DemandCI Engine Use Pooled VMs Docker Containers Phase -2 Code Analysis & Basic Unit Test Run Phase -4 Validate & Feedback Phase -3 Set Up Phase -5 Teardown Commit Commit Triggered/Schedule d Release Management Platform OS Middleware Utilities Provisioned VMs Provision/De-provision VMPipeline Release Dashboard Automated Rollback Agentless Architecture Provisioning Workflow Audit Extensibility Self Service
  • 17. Parting Note !!! Maturity Model Best Practices Tools
  • 18. Q & A