Continuous Integration Basics with Jenkins

A presentation at Code Freeze in January 2012 in Minneapolis, MN, USA by Jenna Pederson

Slide 1

Slide 1

Continuous Integration & Jenkins Jenna Pederson Code Freeze 2012 © 2012 Jenna Pederson All Rights Reserved

Slide 2

Slide 2

What is Continuous Integration? A development practice where developers keep their work continually integrated with the work of other developers and the baseline.

Slide 3

Slide 3

Why Should You Care? ● Reduce rework, time, and cost ● Always have working software ● Find and fix bugs when it is the cheapest ● Immediate feedback on system as a whole ● Less complex, more modular code

Slide 4

Slide 4

Basic Requirement #1 Version control and frequent commits

Slide 5

Slide 5

Basic Requirement #2 Build locally, THEN commit

Slide 6

Slide 6

Basic Requirement #3 Feedback

Slide 7

Slide 7

Basic Requirement #4 Quick Response

Slide 8

Slide 8

Basic Requirement #5 Automated Test Suite

Slide 9

Slide 9

Demo ● Jenkins CI ● Developer Workflow ● View Feedback

Slide 10

Slide 10

Resources ● Continuous Integration by Paul Duvall - http://bit.ly/AysbsP ● Continuous Delivery by Jez Humble - http://bit.ly/zLMFCI ● Integrate Often - http://bit.ly/wahTyf ● Continuous Integration Anti-patterns - http://ibm.co/zY29l2 ● Martin Fowler Continous Integration ● – http://bit.ly/y96P86 – http://bit.ly/zQKVo8 Jenkins CI - http://jenkins-ci.org/

Slide 11

Slide 11

Questions?