Xcode Build Server failed. The devices configured for testing were not found
Found a solution provided by user @juce on github. Link to original response in Apple Developer Forum
Here' is a link to github post explained a details by @juke:
Copy of script:
--- deviceClass.js 2017-05-05 07:10:40.000000000 -0700+++ deviceClass.js.NEW 2017-05-05 07:13:36.000000000 -0700@@ -12,6 +12,7 @@ dbCoreClass = require('./dbCoreClass.js'), xcsutil = require('../util/xcsutil.js'), logger = require('../util/logger.js'),+ fs = require('fs'), redisClass = require('./redisClass.js'); /* XCSDeviceClass object */@@ -141,12 +142,11 @@ query.endkey = [unitTestUUID, {}]; }- redisClass.getDynamicQuery(req, doc_type, function DEVListRedisGetDynamicQuery(err, docs) {- if (err) {- opFailed(err);- } else if (docs) {+ var devicesFile = '/Library/Developer/XcodeServer/Logs/xcs_devices.json';+ fs.readFile(devicesFile, 'utf8', function (err,docs) {+ if (docs) { docs = JSON.parse(docs);- log.info('Found', docs.length, 'devices in Redis.');+ log.info('Found', docs.length, 'devices in file-system cache.'); opSucceeded(docs); } else { log.debug('No devices found in Redis. Falling back to CouchDB.');@@ -167,9 +167,12 @@ } else { log.info('Found', docs.length, 'devices in CouchDB.');- redisClass.setDynamicQuery(req, doc_type, JSON.stringify(docs), function DEVListRedisSetDynamicQuery(err, wasSaved) {- if (wasSaved) {- log.debug('Successfully cached devices to Redis.');+ fs.writeFile(devicesFile, JSON.stringify(docs), 'utf8', function(err) {+ if (err) {+ log.debug('Problem saving devices into ' + devicesFile);+ }+ else {+ log.debug('Successfully cached devices to file.'); } // Even if there's an error (i.e. Redis suddenly went down), we can still continue since // the next request would be redirected to CouchDB.
How to apply. Download or copy this script, and path existing file like this:
[sudo] cd /Library/Developer/XcodeServer/CurrentXcodeSymlink/Contents/Developer/usr/share/xcs/xcsd/classes patch deviceClass.js /path/to/xcs-tweaks/xcs-devices-patch.diff
Then restart the simulator and possibly restart your machine (that was my case). Then check if it's working by:sudo xcrun xcscontrol --list-simulators
Big thanks @juke whoever you are :)
My problem with this was that I had set up the bot on an earlier version of Xcode (with only 11.2 simulators installed).
I upgraded the version of Xcode on the machine I use to run bots, which only had 11.4 simulators installed. Changing the simulators to these latest versions fixed it.