Spotify has successfully migrated its iOS application to the Bazel build system, replacing the legacy Xcode build system. This migration aimed to improve developer productivity by significantly reducing build and CI times, enhancing the feedback loop for engineers. The process involved a phased rollout, side-by-side operation of both systems, and the development of tooling to ensure parity and safety. The integration with Xcode was achieved through rules_xcodeproj, and the release process was adapted. This post details the initial success of integrating Rome, an open-source artifact caching tool, with Artifactory to cache Carthage dependencies, resulting in a 50% reduction in CI build times for the Spotify for Artists app. Future work includes extending this to more projects and addressing local debugging limitations with cached binaries.
All Spotify trails