Your SlideShare is downloading. ×

Continuous Integration

1,103

Published on

Introduction of continious integration to our internal development team.

Introduction of continious integration to our internal development team.

Published in: Technology, Business
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,103
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
61
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

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

×