Contenu connexe
Similaire à Pivotal Labs Open View Presentation Continuous Build
Similaire à Pivotal Labs Open View Presentation Continuous Build (20)
Pivotal Labs Open View Presentation Continuous Build
- 1. Build
Edward Hieatt (VP Engineering)
Ian McFarland (VP Technology)
Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
- 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. Build status visibility
• Email/Twitter: necessary
• Big Visible Chart: priceless
• Green/Red screen
Copyright © 2008 Pivotal Labs, Inc. All rights reserved.
- 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. 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. 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. 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. 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. 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. 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.