ios - Xcode Bot Failing after upgrading to Xcode 5.1


Keywords:ios 


Question: 

So I have a couple of Xcode bots setup and running nightly, they've been building successfully for a few weeks, however unbeknown to me the Xcode server automatically installed the Xcode 5.1 update, and now i get the following log errors in the xcode build console...

2014-03-14 03:02:16.022 xcodebuild[37984:100b] [MT] DVTDeviceSearch: Searching for device with type 'iOS Simulator', options: {
OS = "7.0";
name = "iPhone Retina (4-inch)";
}, genericOnly: NO allowMultiple:NO timeout:0.000000
2014-03-14 03:03:16.148 xcodebuild[37984:100b] [MT] DVTDeviceSearch: No devices located: Error Domain=DVTDeviceErrorDomain Code=6 "The requested device could not be found because no available devices matched the request." UserInfo=0x7ff0e5f481b0 {NSLocalizedDescription=The requested device could not be found because no available devices matched the request.}.
xcodebuild: error: Was unable to find a destination matching the arguments to the -destination flag:
The requested device could not be found because no available devices matched the request.

It looks like the simulator is still trying to access simulators for iOS 7.0 which can't be found. The test settings are set to use 'All Simulators' available on the server.

Any ideas?

UPDATE 1 - The projects are building fine on my local dev machine running Xcode 5.1 and iOS 7.1 SDK.

UPDATE 2 - If I manually select ONLY the iOS 7.1 simulators the build completes.


2 Answers: 

It turns out, that in automatically updating Xcode to 5.1 it uninstalls the iOS 7.0 simulator and replaces it with the iOS 7.1 simulator. It doesn't think to update the build settings on the Xcode server.

So to fix the problem, you have to manually open Xcode on your server, it then prompts you to install several items which you need to do. Then go to xcode preferences > Downloads and you can reinstall the iOS 7.0 simulator.

Really logical, thanks Apple...

 

I had the same error popping up on my Xcode build server (mac mini running OS X Yosemite and building using Xcode 6.1.1). The build was failing because of that.

It turned out I had an iPhone plugged in to the mac mini that "did not trust" the mac it was connected to!

Solution: plugged it out, restarted the integration, SUCCESS!

You'd think such an elaborate system should be smarter about trivial issues like this...