About Continuous Integration in Xcode

Xcode supports a continuous integration workflow through the Xcode service. The Xcode service, available in OS X Server, automates the integration process of building, analyzing, testing, and archiving your app. From your development Mac, you create bots that run on a separate server, where they perform these integrations. Bots help ensure that your product is always in a releasable state—and when there’s a failure, the service notifies you or the person whose code change caused the failure.


At a Glance

Follow the steps outlined in this document to set up a continuous integration workflow using Xcode and the Xcode service.

Install and Set Up the Xcode Service

Even if you’ve never set up a server, you’ll find the process for setting up the Xcode service in OS X Server to be straightforward.

Connect the Xcode Service to Source Code Repositories

For bots to perform integrations of projects, the bots must have access to the projects’ source code repositories. The Xcode service supports two popular source control systems: Git and Subversion. You can use Git and Subversion repositories hosted on remote servers, and you can host and use Git repositories on the server with OS X Server installed.

Create and Run Bots

Bots are at the center of the automated workflow. Bots build and test products with the schemes of your choosing. With the Xcode service able to access the source code repositories of your projects, you can create and schedule bots to run either periodically or on every source code commit. You can also configure bots to send email notification of the success or failure of their integrations.

Monitor and Manage Bots

From the log navigator in Xcode on the development Mac, you can manage bots, view their test results, read integration logs, initiate integrations, and download product builds and archives. The Xcode service also hosts a bots website where you and members of your development team can perform these operations.

See Also

With OS X Server, small organizations and workgroups without an IT department can take full advantage of the benefits of a server. In addition to the Xcode service, OS X Server can provide services to Mac, Windows, and UNIX computers, and to iOS devices such as iPhone, iPad, and iPod touch. You use the Server app to turn on the services you want to provide, customize service settings, and turn off services you don’t need. Services include Calendar, Contacts, DHCP, DNS, File sharing, FTP, Mail, Messages, NetInstall, Open Directory, Profile Manager, Software Update, Time Machine, VPN, Websites, Wiki, and Xsan.

For information about setting up and administering these services while running OS X Server, chose Help > Server Help. An administration guide, OS X Server: Advanced Administration, is also available online.