From DOES 2014: Development Velocity – Single Track or CI – Pick Two (Talk by Ericsson)
This talk was given at the 2014 DevOps Enterprise Summit (#DOES14)
Continuous Integration (CI) is problematic for large, follow-the-sun, single-track development projects.
The unit at Ericsson employs more than 1000 developers in locations all over the world. The code base contains 70,000 files, which build more that 10 target platforms. Ericsson maintains a single track “Latest Stable Version” (LSV) branch with as many as 200 commits per day.
If Ericsson was to do true CI (one build and test per commit), they would need the CI cycle to be less than 10 minutes—which is impossible for a code base of this size.
Ericsson have found a unique solution with Preflight. This utilizes ElectricAccelerator and ElectricCommander to build and sanity-test all commits in batches before they are visible in the shared code base. After implementing preflight, the HEAD of the LSV branch is no longer ever “red” (completely broken). It is buildable, “sane,” and unlocked at all times, avoiding large productivity losses. And – Ericsson does all of this without using back-outs—another major productivity sink.