Continuous Integration
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Continuous Integration

on

  • 1,548 views

Introduction of continious integration to our internal development team.

Introduction of continious integration to our internal development team.

Statistics

Views

Total Views
1,548
Views on SlideShare
1,546
Embed Views
2

Actions

Likes
2
Downloads
58
Comments
0

1 Embed 2

http://www.slideshare.net 2

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

Continuous Integration Presentation Transcript

  • 1. 25 June, 2008
    Continuous Integration
    by Mel Gerats
  • 2. Definitionhttp://en.wikipedia.org/wiki/Continuous_integration
    Continuous integration describes a set of software engineering practices that speed up the delivery of software by decreasing integration times
    25 June, 2008
    Continuous Integration, by Mel Gerats
    2
  • 3. Maintain a Single Source Repository.
    Simple: Usesourcecontrol
    25 June, 2008
    3
    Continuous Integration, by Mel Gerats
  • 4. Automate the Build
    Building shouldtakeoneaction at most!
    Building shouldnottake YOUR time
    => Build server
    - CruiseControl.net
    - Team System Build Server
    - Team City
    25 June, 2008
    4
    Continuous Integration, by Mel Gerats
  • 5. Make Your Build Self-Testing
    Tests shouldbe run everybuild
    => Tests can have noeffects, orshould at least clean up.
    25 June, 2008
    5
    Continuous Integration, by Mel Gerats
  • 6. Everyone Commits Every Day
    Check in often!
    Findproblemsearly
    Mostlyforlargeprojects?
    25 June, 2008
    6
    Continuous Integration, by Mel Gerats
  • 7. Every Commit Should Build the Mainline on an Integration Machine
    Automatedbuildaftercheckin
    Automated tests aftercheckin
    25 June, 2008
    7
    Continuous Integration, by Mel Gerats
  • 8. Test in a Clone of the Production Environment
    The code maybe fine, but the environment?
    Dependencies
    Versions
    OS

    25 June, 2008
    8
    Continuous Integration, by Mel Gerats
  • 9. Everyone can see what's happening
    Checkin reports
    Build reports
    Test reports
    Coverage reports
    http://buildserver/ccnet
    25 June, 2008
    9
    Continuous Integration, by Mel Gerats
  • 10. Automate Deployment
    Successful build => deploy to staging
    25 June, 2008
    10
    Continuous Integration, by Mel Gerats
  • 11. Overview
    Maintain a Single Source Repository.
    Automate the Build
    Make Your Build Self-Testing
    Everyone Commits Every Day
    Every Commit Should Build the Mainline on an Integration Machine
    Keep the Build Fast
    Test in a Clone of the Production Environment
    Make it Easy for Anyone to Get the Latest Executable
    Everyone can see what's happening
    Automate Deployment
    25 June, 2008
    11
    Continuous Integration, by Mel Gerats
  • 12. Challenges
    Bus factor
    Dependencies
    Brokenwindowsyndrome
    25 June, 2008
    12
    Continuous Integration, by Mel Gerats
  • 13. Todo’s
    Research/try out options
    • Now we useCruiseControl
    • 14. Tom willtryTeamCity + FinalBuilder
    • 15. Experiment with Team System
    25 June, 2008
    13
    Continuous Integration, by Mel Gerats
  • 16. Next steps
    Automated unit tests
    Reports
    Automateddeployment
    25 June, 2008
    14
    Continuous Integration, by Mel Gerats
  • 17. Resources
    Martin Fowler on continuous integration
    Ourbuildserver
    CruiseControl
    Teamcity
    Team Foundation Build
    25 June, 2008
    15
    Continuous Integration, by Mel Gerats
  • 18. 16
    Continuous Integration, by Mel Gerats
    25 June, 2008