How We Gave Superpowers to Our macOS CI
Article Summary
Spotify cut iOS pre-merge CI times by 75% with one infrastructure change. Here's how they validated and scaled their approach.
Spotify's Client Platform tribe moved their iOS CI from macOS VMs to bare metal machines. The team ran extensive benchmarks and used data-driven monitoring to guide their transition from 2014 Mac hardware to 2018 Mac Minis.
Key Takeaways
- Build times on bare metal were 2x faster and perfectly consistent
- P50 build time dropped from 16 minutes to under 8 minutes
- VM usage pattern: 80% writes, 20% reads during peak (typical is 40/60)
- Bare metal runs 6 simultaneous simulators vs 3 on VMs
- Unit testing configs saw biggest wins with more stable simulators
Critical Insight
Moving iOS CI from VMs to bare metal cut pre-merge verification times by up to 75% while eliminating build time variance.