SlideShare une entreprise Scribd logo
1  sur  22
Continuous Integration: 
Blueprint, Toolbox, Master Craft 
Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com 
Stephen D. Ritchie 
@RuthlessHelp 
Oct 11, 2014 
NoVA CodeCamp (@NoVACodeCamp) 
October 2014
Live Tweet, Slides and Examples 
• Twitter: @RuthlessHelp 
• Slides: 
http://www.slideshare.net/ruthlesshelp 
• Code Samples: 
http://github.com/ruthlesshelp 
Stephen D. Ritchie 
2
The Problem 
Stephen D. Ritchie 
Source 
Code 
1 3 2 
3 
Scott’s 
Computer 
Susan’s 
Computer 
You 
1 
2 
3 
Scott makes changes 
Susan makes changes 
You can’t build
What Went Wrong? 
Stephen D. Ritchie 
4 
Conflicts 
Missing Files 
Breaking Changes
How do you 
find 
integration 
issues? 
Stephen D. Ritchie 5
Manual Integration 
Build 
Run Some Unit Tests 
Perform Static Analysis 
Clean + Rebuild All 
Stephen D. Ritchie 
6
Continuous Integration Blueprint 
Stephen D. Ritchie 
7
CI Server 
Stephen D. Ritchie 
Source 
Code 
8 
Scott’s 
Computer 
Susan’s 
Computer 
You 
CI 
Server
CI Server 
Triggered by SCM 
Stephen D. Ritchie 
9 
and
CI – Per Commit Steps 
1. Clean + Rebuild All 
2. Run All Unit Tests 
3. Analysis 
Stephen D. Ritchie 
Static Code Analysis 
Coding Standards 
10
Continuous Integration Toolbox 
Stephen D. Ritchie 
11
CI Server – Jenkins 
Stephen D. Ritchie 
12 
http://jenkins-ci.org/ 
Free 
Open Source
CI Server – Cruise Control 
http://www.cruisecontrolnet.org/ 
Free 
Open Source 
Stephen D. Ritchie 
http://cruisecontrol.sourceforge.net/ 
13
CI Server – TeamCity 
http://www.jetbrains.com/teamcity/ 
Commercial 
Easy to Use 
Stephen D. Ritchie 
14
Perhaps an 
example would 
be helpful 
Stephen D. Ritchie 15
Continuous Integration Master Craft 
Stephen D. Ritchie 
16
The Master Craft 
Stephen D. Ritchie 
Unit Testing 
17 
Plus 
Code Coverage
The Master Craft 
Stephen D. Ritchie 
System Testing 
Integration Testing 
Acceptance Testing 
18
The Master Craft 
Visualizations 
Checks 
Stephen D. Ritchie 
Code Quality 
19 
Metrics 
Detections 
Analysis
The Master Craft 
Stephen D. Ritchie 
Reporting 
20 
And 
Visibility
The Master Craft 
Stephen D. Ritchie 
Packaging 
21 
And 
Deployment
Stephen’s Contact Info 
• Email: 
stephen.ritchie@excella.com 
• LinkedIn: 
http://www.linkedin.com/in/sritchie 
Stephen D. Ritchie 
22

Contenu connexe

Tendances

Understanding the timeline
Understanding the timelineUnderstanding the timeline
Understanding the timeline
gbpayne
 
Understanding the timeline
Understanding the timelineUnderstanding the timeline
Understanding the timeline
gbpayne
 

Tendances (18)

Be a User first; then a Tester
Be a User first; then a TesterBe a User first; then a Tester
Be a User first; then a Tester
 
Open Source Systems Administration
Open Source Systems AdministrationOpen Source Systems Administration
Open Source Systems Administration
 
Understanding the timeline
Understanding the timelineUnderstanding the timeline
Understanding the timeline
 
Understanding the timeline
Understanding the timelineUnderstanding the timeline
Understanding the timeline
 
ATAGTR2017 Test the REST
ATAGTR2017 Test the REST ATAGTR2017 Test the REST
ATAGTR2017 Test the REST
 
2017 Q1 Open Source Support Briefing
2017 Q1 Open Source Support Briefing2017 Q1 Open Source Support Briefing
2017 Q1 Open Source Support Briefing
 
ATAGTR2017 Expanding test horizons with Robot Framework
ATAGTR2017 Expanding test horizons with Robot FrameworkATAGTR2017 Expanding test horizons with Robot Framework
ATAGTR2017 Expanding test horizons with Robot Framework
 
Accessibility Testing Tools for Developers - Seattle Code Camp
Accessibility Testing Tools for Developers - Seattle Code CampAccessibility Testing Tools for Developers - Seattle Code Camp
Accessibility Testing Tools for Developers - Seattle Code Camp
 
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testingATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
ATAGTR2017 Machine Learning telepathy for Shift Right approach of testing
 
Scaling Analysis Responsibly
Scaling Analysis ResponsiblyScaling Analysis Responsibly
Scaling Analysis Responsibly
 
DevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscapeDevOps checklist or how to understand where is your team in DevOps landscape
DevOps checklist or how to understand where is your team in DevOps landscape
 
A Statistician Walks into a Tech Company: R at a Rapidly Scaling Healthcare S...
A Statistician Walks into a Tech Company: R at a Rapidly Scaling Healthcare S...A Statistician Walks into a Tech Company: R at a Rapidly Scaling Healthcare S...
A Statistician Walks into a Tech Company: R at a Rapidly Scaling Healthcare S...
 
DevTechDocsOps
DevTechDocsOpsDevTechDocsOps
DevTechDocsOps
 
Delivering code with git hub actions
Delivering code with git hub actionsDelivering code with git hub actions
Delivering code with git hub actions
 
Continuous Integration DCAEC12
Continuous Integration DCAEC12Continuous Integration DCAEC12
Continuous Integration DCAEC12
 
What We Learned Building an R-Python Hybrid Predictive Analytics Pipeline
What We Learned Building an R-Python Hybrid Predictive Analytics PipelineWhat We Learned Building an R-Python Hybrid Predictive Analytics Pipeline
What We Learned Building an R-Python Hybrid Predictive Analytics Pipeline
 
GitHub Actions Security
GitHub Actions SecurityGitHub Actions Security
GitHub Actions Security
 
Advanced Code Analysis with .NET
Advanced Code Analysis with .NETAdvanced Code Analysis with .NET
Advanced Code Analysis with .NET
 

En vedette

En vedette (6)

DevOps Requires Agility
DevOps Requires AgilityDevOps Requires Agility
DevOps Requires Agility
 
Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015Agile Engineering Sparker GLASScon 2015
Agile Engineering Sparker GLASScon 2015
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
 
Overview of .NET Best Practices
Overview of .NET Best PracticesOverview of .NET Best Practices
Overview of .NET Best Practices
 
Lightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile ApproachLightweight Documentation: An Agile Approach
Lightweight Documentation: An Agile Approach
 
Lightweight Documentation
Lightweight DocumentationLightweight Documentation
Lightweight Documentation
 

Similaire à Continuous Integration - NoVA CodeCamp 2014-10-11

Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons Learned
LB Denker
 
Improve Development Process with Open Source Software
Improve Development Process with Open Source SoftwareImprove Development Process with Open Source Software
Improve Development Process with Open Source Software
elliando dias
 

Similaire à Continuous Integration - NoVA CodeCamp 2014-10-11 (20)

Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
 
Continuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master CraftContinuous Integration: Blueprint, Toolbox, Master Craft
Continuous Integration: Blueprint, Toolbox, Master Craft
 
Continuous Integration: Toolbox, Blueprint, Master Craft
Continuous Integration: Toolbox, Blueprint, Master CraftContinuous Integration: Toolbox, Blueprint, Master Craft
Continuous Integration: Toolbox, Blueprint, Master Craft
 
Test Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master CraftTest Driven Development: Blueprint, Toolbox, and Master Craft
Test Driven Development: Blueprint, Toolbox, and Master Craft
 
Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015Soasta | CloudBees webinar 11/12/2015
Soasta | CloudBees webinar 11/12/2015
 
Solve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOpsSolve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOps
 
DevOps Training - Ho Chi Minh City
DevOps Training - Ho Chi Minh CityDevOps Training - Ho Chi Minh City
DevOps Training - Ho Chi Minh City
 
Continuous Delivery webinar
Continuous Delivery webinarContinuous Delivery webinar
Continuous Delivery webinar
 
Continuous test automation
Continuous test automationContinuous test automation
Continuous test automation
 
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.02014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
2014-10 DevOps NFi - Why it's a good idea to deploy 10 times per day v1.0
 
Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons Learned
 
Improve Development Process with Open Source Software
Improve Development Process with Open Source SoftwareImprove Development Process with Open Source Software
Improve Development Process with Open Source Software
 
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
 
TLC2018 Tanya Kravtsov: 10 Steps to CI, Testing and Delivery
TLC2018 Tanya Kravtsov: 10 Steps to CI, Testing and DeliveryTLC2018 Tanya Kravtsov: 10 Steps to CI, Testing and Delivery
TLC2018 Tanya Kravtsov: 10 Steps to CI, Testing and Delivery
 
Continuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon OttoContinuous Delivery for Python Developers – PyCon Otto
Continuous Delivery for Python Developers – PyCon Otto
 
NYIT DSC/ Spring 2021 - Introduction to DevOps (CI/CD)
NYIT DSC/ Spring 2021 - Introduction to DevOps (CI/CD)NYIT DSC/ Spring 2021 - Introduction to DevOps (CI/CD)
NYIT DSC/ Spring 2021 - Introduction to DevOps (CI/CD)
 
DevOps Powered by Splunk
DevOps Powered by SplunkDevOps Powered by Splunk
DevOps Powered by Splunk
 
Ploigos - How It Works, and Why.pdf
Ploigos - How It Works, and Why.pdfPloigos - How It Works, and Why.pdf
Ploigos - How It Works, and Why.pdf
 
De weg naar Continuous Delivery
De weg naar Continuous DeliveryDe weg naar Continuous Delivery
De weg naar Continuous Delivery
 
Michigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow TutorialMichigan IT Symposium 2017 - CI/CD Workflow Tutorial
Michigan IT Symposium 2017 - CI/CD Workflow Tutorial
 

Plus de Stephen Ritchie

DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangersDCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
Stephen Ritchie
 
Automated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and DangersAutomated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and Dangers
Stephen Ritchie
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with Databases
Stephen Ritchie
 

Plus de Stephen Ritchie (7)

Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923Dc scrum agile_eng_20130923
Dc scrum agile_eng_20130923
 
Agile Testing Best Practices
Agile Testing Best PracticesAgile Testing Best Practices
Agile Testing Best Practices
 
An Overview of .NET Best Practices
An Overview of .NET Best PracticesAn Overview of .NET Best Practices
An Overview of .NET Best Practices
 
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit TestingOvercoming the Obstacles, Pitfalls, and Dangers of Unit Testing
Overcoming the Obstacles, Pitfalls, and Dangers of Unit Testing
 
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangersDCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
DCDNUG 10/16/2012 Automated testing obstacles pitfalls dangers
 
Automated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and DangersAutomated Testing: Obstacles, Pitfalls, and Dangers
Automated Testing: Obstacles, Pitfalls, and Dangers
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with Databases
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 

Continuous Integration - NoVA CodeCamp 2014-10-11

  • 1. Continuous Integration: Blueprint, Toolbox, Master Craft Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com Stephen D. Ritchie @RuthlessHelp Oct 11, 2014 NoVA CodeCamp (@NoVACodeCamp) October 2014
  • 2. Live Tweet, Slides and Examples • Twitter: @RuthlessHelp • Slides: http://www.slideshare.net/ruthlesshelp • Code Samples: http://github.com/ruthlesshelp Stephen D. Ritchie 2
  • 3. The Problem Stephen D. Ritchie Source Code 1 3 2 3 Scott’s Computer Susan’s Computer You 1 2 3 Scott makes changes Susan makes changes You can’t build
  • 4. What Went Wrong? Stephen D. Ritchie 4 Conflicts Missing Files Breaking Changes
  • 5. How do you find integration issues? Stephen D. Ritchie 5
  • 6. Manual Integration Build Run Some Unit Tests Perform Static Analysis Clean + Rebuild All Stephen D. Ritchie 6
  • 7. Continuous Integration Blueprint Stephen D. Ritchie 7
  • 8. CI Server Stephen D. Ritchie Source Code 8 Scott’s Computer Susan’s Computer You CI Server
  • 9. CI Server Triggered by SCM Stephen D. Ritchie 9 and
  • 10. CI – Per Commit Steps 1. Clean + Rebuild All 2. Run All Unit Tests 3. Analysis Stephen D. Ritchie Static Code Analysis Coding Standards 10
  • 11. Continuous Integration Toolbox Stephen D. Ritchie 11
  • 12. CI Server – Jenkins Stephen D. Ritchie 12 http://jenkins-ci.org/ Free Open Source
  • 13. CI Server – Cruise Control http://www.cruisecontrolnet.org/ Free Open Source Stephen D. Ritchie http://cruisecontrol.sourceforge.net/ 13
  • 14. CI Server – TeamCity http://www.jetbrains.com/teamcity/ Commercial Easy to Use Stephen D. Ritchie 14
  • 15. Perhaps an example would be helpful Stephen D. Ritchie 15
  • 16. Continuous Integration Master Craft Stephen D. Ritchie 16
  • 17. The Master Craft Stephen D. Ritchie Unit Testing 17 Plus Code Coverage
  • 18. The Master Craft Stephen D. Ritchie System Testing Integration Testing Acceptance Testing 18
  • 19. The Master Craft Visualizations Checks Stephen D. Ritchie Code Quality 19 Metrics Detections Analysis
  • 20. The Master Craft Stephen D. Ritchie Reporting 20 And Visibility
  • 21. The Master Craft Stephen D. Ritchie Packaging 21 And Deployment
  • 22. Stephen’s Contact Info • Email: stephen.ritchie@excella.com • LinkedIn: http://www.linkedin.com/in/sritchie Stephen D. Ritchie 22