FISL 2010: CruiseControl: the open source that changed the way we develop software
Upcoming SlideShare
Loading in...5
×
 

FISL 2010: CruiseControl: the open source that changed the way we develop software

on

  • 1,693 views

the practice and the history of Continuous Integration and CruiseControl

the practice and the history of Continuous Integration and CruiseControl

Statistics

Views

Total Views
1,693
Views on SlideShare
1,571
Embed Views
122

Actions

Likes
0
Downloads
23
Comments
0

16 Embeds 122

http://agiletips.blogspot.com 76
http://agiletips.blogspot.in 10
http://www.scoop.it 6
http://agiletips.blogspot.ca 6
http://agiletips.blogspot.com.br 5
http://agiletips.blogspot.co.uk 4
http://translate.googleusercontent.com 3
http://agiletips.blogspot.sg 2
http://agiletips.blogspot.pt 2
http://agiletips.blogspot.de 2
http://agiletips.blogspot.no 1
http://agiletips.blogspot.com.au 1
http://agiletips.blogspot.ch 1
http://agiletips.blogspot.it 1
http://agiletips.blogspot.fr 1
http://agiletips.blogspot.co.il 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

FISL 2010: CruiseControl: the open source that changed the way we develop software FISL 2010: CruiseControl: the open source that changed the way we develop software Presentation Transcript

  • CruiseControl: the open source
    that changed the way we
    develop software
    Paulo CaroliAgile Coach
    LuizaPagliariDeveloper
    pcaroli@thoughtworks.com
    Twitter: @paulocaroli
    lpagliar@thoughtworks.com
    Twitter: @lpagliari
  • Agenda
  • Motivation
  • Traditionally, different modules are developed by different teams/developers
  • In XP, any programmer can change any part of the code
  • Definition
  • Continuous Integration is a software development practice where members of a team integrate their work frequently…
  • … each integration is verified by an automated build …
  • … detect integration errors as quickly as possible…
  • … assumes a high degree of tests.
  • Demonstration
  • Solution: continually integrate and
    test throughout the project
    Developers
    Continuous Integration Server
    Source Repository
  • Developers check out code into their private workspaces
  • Developers work on functionality and validate it by running unit tests and local build
  • Developer update code to avoid conflicts
  • Developers work on existing conflicts and validate them by running tests and local build
  • When done, they commit changes to the repository
  • The CI server monitors the repository and
    checks out changes when they occur
  • The CI server builds the system and runs automated tests
  • The CI server releases deployable artefacts
  • The CI server assigns a build label to the
    version of the code that it just built
  • The CI server informs the team of the successful build and generates useful metrics
  • If the build or tests fail, the CI server alerts the team
  • The team fix the issue at the earliest opportunity
  • Continually integrate and test throughout the project
  • C3 project
    4 Dev pairs (Kent, Martin, Ward…)
    Smaltalk / Genstone
    Manual Integration
    Integration server
    Developer name on post-it
    Red / Yellow / Green
  • C2 wiki
    XP is being born
  • XP Explained book released
    Project A
    Martin, Ward and TW
    Java
    Integration was a 2 week exercise
  • < Early 2000 >
    Project A goes for XP
    50 developers, many teams
    Java / Star Team / before ant
    While (true) {
    sleep
    upload?
    build
    test
    }
  • < Late 2000 >
    Martin’s CI article
    Project B
    Repeat the CI automated idea
    CruiseControl is born
  • Project C, D … X
    Connectors to many repositories
    Many contributors
  • CI practice really picking up
    TW in a .Net project
    CruiseControl.Net
  • TW in a Ruby project
    CruiseControl.rb
  • This talk about CruiseControl history
    Many good options!
    Next generation of tools
  • Dashboard
  • Build Indicators
  • Directly on computer...
  • ... Or outside it
  • ... Or outside it
  • CruiseControl
    Cool stats
  • The oldest running CI build
    (August 2000)
    • From 2006 to2010
    • 74% green builds
  • Last 5 months: 41,000+ downloads
    Countries
    O.S.
    1. US 10,526
    2. China 7,637
    3. India 3,154

    10.Brazil 678
  • 600,000+ downloads(21.5 TB) since 2001
  • CruiseControl: the open source
    that changed the way we
    develop software
    Questions?
    Thank you!
    Paulo CaroliAgile Coach
    LuizaPagliariDeveloper
    pcaroli@thoughtworks.com
    Twitter: @paulocaroli
    lpagliar@thoughtworks.com
    Twitter: @lpagliari
  • References (Google it!)
    XP Explained by Kent Beck
    Continuous Integration by Martin Fowler
    Continuous Delivery by Jez Humble and David Farley
    CruiseControl by the community
    Bubble, Bubble, Build's In Trouble (lava lamp)