Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Continuous Integration for Xcode projects?

After using Hudson for continuous integration with a prior project, I want to set up a continuous integration server for the iPhone projects I'm working on now. After doing some research it looks like there aren't any CI engines designed specifically for Xcode, but one guy has had success using Cruise Control combined with the xcodebuild CLI tool. Has anyone here tried this? Are there any CI engines that work well with Xcode projects?

I'm probably going to give Cruise Control a try. I'll post an answer with my findings.

like image 826
Mike Akers Avatar asked Oct 17 '08 17:10

Mike Akers


People also ask

What is continuous integration in iOS?

Continuous integration, or CI as it will be referred to from here on, is an ecosystem of software, usually more than one package, that allows you to test and deploy your iOS apps with minimal manual involvement, sometimes even none.

What is integration app in Xcode?

In Xcode on your development Mac, you set up bots that run on the server. These bots process your apps, using the source code in your repository, and report back the results. Each run of a bot is called an integration, and these runs occur regularly throughout the development life cycle of your app.

What is CI and CD in iOS?

Continuous Integration and Continuous Delivery (CI/CD) for iOS enable us to improve our build deploys. We're able to release updates at any time in a sustainable way without the hurdle of doing it manually every time.

What is the new continuous integration and delivery service built into Xcode 13 called?

Xcode Cloud is a continuous integration and delivery service built into Xcode and designed expressly for Apple developers.


1 Answers

I'm successfully using Hudson on the mac with xcodebuild. With the release of the 3.0 iPhone sdk you have compete control over the target, configuration and sdk that the project is to be built against.

It's as simple as creating a build step in hudson and telling xcodebuild to build the project:

xcodebuild -target "myAppAppStore" -configuration "DistributionAppStore" -sdk iphoneos2.1 

The upfront work has paid off for me as my builds just work without any additional thought. I've written a detailed description on my blog if anyone is interested.

iPhone app distribution made easy

like image 185
Silentcode Avatar answered Sep 25 '22 06:09

Silentcode