Pivotal Labs Open View Presentation Continuous Build

1,581
-1

Published on

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

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

No notes for slide

Pivotal Labs Open View Presentation Continuous Build

  1. 1. Build Edward Hieatt (VP Engineering) Ian McFarland (VP Technology) Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  2. 2. What’s the goal? • Every checkin to any part of the codebase prompts a build • The build results are easily available to the whole team Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  3. 3. Build status visibility • Email/Twitter: necessary • Big Visible Chart: priceless • Green/Red screen Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  4. 4. What happens when the build fails? • The whole team stops and fixes the build, period • No checkins occur during the build... • ...except checkins to fix the build Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  5. 5. Broken windows effect • A too-often red build is poison • There must be confidence in the build status • It’s better to temporarily remove flaky tests than to have frequent false negatives Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  6. 6. Starting over • If a build has been red for a long time: • Stop the bleeding: disable all red tests • Be strict from now on: keep it green • Sub-team focuses on fixing the red tests • Re-enable each test as it’s fixed Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  7. 7. Speed of test suite • Faster suite => more relevance (build status is up-to-date) • Faster suite => more green (developers more likely to run tests before checkin) • Move super-slow tests to separate suite that isn’t run on each checkin Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  8. 8. Relevance • Green build must mean releasable: • Need full coverage for confidence • Consider adding coverage metrics to build • Only green builds get a tag number Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  9. 9. Investment • Good CI is a long-term investment • Return is huge • Need a dedicated resource • for initial setup • for long-term maintenance • Pivotal Labs spent >2 years so far on CI • scores of apps per year • dozens concurrently Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
  10. 10. One codebase • Everything must be checked in • Green build <=> tests for all components green • If multiple languages, consider end-to- end tests in build for entire system Copyright © 2008 Pivotal Labs, Inc. All rights reserved.

×