Chapter 6. Build Automation

Depending on your development environment, you may or may not find a need to automate your build process. For a one-person development team, you probably wouldn’t take the time to automate the build of your iOS apps, but for any sizable development organization (which could be any more than one developer), you may find it necessary to set up build automation.

We’re not going to delve into the merits of Continuous Integration (if you’re reading this, you don’t need it explained to you). The primary reason for setting up a continuous build process for an iOS app is to verify that with every source code change, your app not only builds without error, but can also be packaged for Ad Hoc and App Store Distribution. Usually when a developer compiles their code, packaging and distribution is not considered. A developer typically verifies her code using either the iOS Simulator or a locally attached device. It is the role of the Release Engineer to set up the automation very early in the development cycle to continuously build, sign, and package your app(s) for distribution.

The Build Environment

For a dedicated build environment, here are a few pointers that may help you automate and streamline your build process so that it runs without issue or manual intervention. The main goal here is proof of concept that you can build your Xcode project or workspace on the command line prior to setting up your iOS build on a Continuous Integration server.

Always use ...

Get Essential iOS Build and Release now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.