Continuous Integration DCAEC12
-
Upload
stephen-ritchie -
Category
Technology
-
view
335 -
download
0
description
Transcript of Continuous Integration DCAEC12
Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com
#DCAEC12
Continuous Integration:
Blueprint, Toolbox, Master Craft
Stephen D. Ritchie@RuthlessHelp
Dec 7, 2012
Stephen D. Ritchie #DCAEC12
Live Tweet, Slides and Examples
• Twitter: @RuthlessHelp
#DCAEC12
• Slides:
http://www.slideshare.net/ruthlesshelp
• Code Samples:
http://github.com/ruthlesshelp
2
Stephen D. Ritchie #DCAEC12
The Problem
SourceCode
1 23
3
Scott’sComputer
Susan’sComputer
You
1
2
3
Scott makes changes
Susan makes changes
You can’t build
Stephen D. Ritchie #DCAEC12
What Went Wrong?
4
Conflicts
Missing Files
Breaking Changes
Stephen D. Ritchie #DCAEC12 5
How do youfind
integrationissues?
Stephen D. Ritchie #DCAEC12
Manual Integration
6
Build
Run Some Unit Tests
Perform Static Analysis
Clean + Rebuild All
Stephen D. Ritchie #DCAEC12
Continuous Integration Blueprint
7
Stephen D. Ritchie #DCAEC12
CI Server
SourceCode
8
Scott’sComputer
Susan’sComputer
You
CIServer
Stephen D. Ritchie #DCAEC12
CI Server
9
Triggered by SCMand
Stephen D. Ritchie #DCAEC12
CI – Per Commit Steps
10
1. Clean + Rebuild All
2. Run All Unit Tests
Coding Standards
3. AnalysisStatic Code Analysis
Stephen D. Ritchie #DCAEC12
Continuous Integration Toolbox
11
Stephen D. Ritchie #DCAEC12
CI Server – Jenkins
12
http://jenkins-ci.org/
Free
Open Source
Stephen D. Ritchie #DCAEC12
CI Server – Cruise Control
13
http://cruisecontrol.sourceforge.net/
Free
Open Source
http://www.cruisecontrolnet.org/
Stephen D. Ritchie #DCAEC12
CI Server – TeamCity
14
Commercial
Easy to Use
http://www.jetbrains.com/teamcity/
Stephen D. Ritchie #DCAEC12 15
Perhaps an example would
be helpful
Stephen D. Ritchie #DCAEC12
Continuous Integration Master Craft
16
Stephen D. Ritchie #DCAEC12
The Master Craft
17
Unit TestingPlus
Code Coverage
Stephen D. Ritchie #DCAEC12
The Master Craft
18
Integration Testing
System Testing
Acceptance Testing
Stephen D. Ritchie #DCAEC12
The Master Craft
19
Code Quality
Metrics
Visualizations
Detections
Checks
Analysis
Stephen D. Ritchie #DCAEC12
The Master Craft
20
ReportingAnd
Visibility
Stephen D. Ritchie #DCAEC12
The Master Craft
21
PackagingAnd
Deployment
Stephen D. Ritchie #DCAEC12
Stephen’s Contact Info
• Email: [email protected]
• LinkedIn:
http://www.linkedin.com/in/sritchie
22