Replacing a temporary mobile build bottleneck with an automated release path
A team regularly exhausted its free hosted-build allowance, then moved artifacts manually between the build service, shared storage, QA, BrowserStack, and the app stores.
The decision
Pay for short-term capacity while the launch was at risk, then build the owned Azure pipeline only after the team had room to do it safely.
Observed result
The company paid for additional hosted-build capacity for three months. During the third month, the new pipeline automated iOS and Android builds and distribution to TestFlight and Google Play, removing manual download-and-upload steps.
The decision, visualized
Manual handoffs → automated delivery
Temporary hosted capacity protected launch while the team built an owned long-term release path.
The immediate constraint
The free allowance often ran out with days left in the month. Developers then built locally and moved files manually so QA could test. Refusing any expense did not make delivery free; it shifted cost into developer time, waiting, handoffs, and launch risk.
The two-horizon decision
The fastest responsible short-term move was to pay for enough capacity to protect the production launch. The stronger long-term move was an owned CI/CD path in Azure. Trying to build the long-term system during the most constrained launch period would have increased risk.
The automated path
The pipeline produced the required iOS and Android artifacts and distributed builds directly to TestFlight and Google Play. QA could reach the latest version from physical devices or its testing environment without relying on the previous chain of manual transfers.
Why the decision matters
Strong engineering economics are not synonymous with refusing subscriptions or always building internally. The right decision can be “buy now, own later” when the temporary purchase protects a deadline and the later internal system has a justified maintenance case.