Unity Technologies is the creator of a flexible and high-performance end-to-end development platform used to create rich, interactive 2D, 3D, VR, and AR experiences. Unity’s powerful graphics engine and full-featured editor serve as the foundation to develop beautiful games or apps and easily bring them to multiple platforms: mobile devices, home entertainment systems, personal computers, and… embedded systems.
Due to their large scale of operations and specific needs, Unity Technologies decided to create in-house tools for software development. Unity Technologies asked STX Next for assistance in maintaining and steadily improving one such tool called Katana.
Katana is a fork of BuildBot—a continuous integration tool written in Python using the Twisted framework. With one master server, Katana is able to use an unlimited number of slave machines to perform builds.
STX Next helped create Katana to meet the demand of more than 10,000 builds per day. With its scale, Katana is crucial for Unity’s daily operations, as any downtime would affect hundreds of Unity’s developers. Challenges included resolving memory leaks, dealing with race conditions, and adding new features to the highly sensitive system.