Impossible d'utiliser mon propre kestore avec xcodebuild sous Mavericks

J'essaie de migrer des servers de compilation xcode iOS pour utiliser Mavericks, ce qui est essentiel pour les versions xcode 6. Cependant, appeler xcodebuild avec du code qui fonctionnait dans Mountain Lion ne semble plus fonctionner et donne:

Code Sign error: No codesigning identities found: No codesigning identities (ie certificatee and private key pairs) that match the provisioning profile specified in your build settings (“provision name”) were found. 

Notre command build est assez standard et le certificate est en place, faire exactement le même code sur mountain lion "fonctionne" (notez que j'ai ajouté des sauts de ligne pour la lisibilité et remplacé certaines données privées comme le nom du projet et le provisioning):

 /Applications/Xcode5.app/Contents/Developer/usr/bin/xcodebuild -project ProjectName.xcodeproj/ -alltargets -configuration Release -sdk iphoneos7.0 build PROVISIONING_PROFILE=XXXX-XXXXX-XXXX-XXXX-XXXXXXX CODE_SIGN_IDENTITY="iPhone Dissortingbution: name of company (XXXXXXXX)" KEYCHAIN=/Users/administrator/Library/Keychains/temp.keychain OTHER_CODE_SIGN_FLAGS=--keychain /Users/administrator/Library/Keychains/temp.keychain 

J'ai une solution de contournement qui signe avec un certificate / provisioning de "travail connu" et les remplace en utilisant l'outil codesign après que la construction soit terminée mais cela provoque des effets secondaires aux users que je n'ai aucune idée de comment contourner. Autant que je sache, ce qui précède devrait fonctionner et pourrait manquer un nouvel argument à xcodebuild que je ne connais pas.

Mavericks ignore le jeu de keys par défaut lors de l'appel:

 security default-keychain 

Et la logique initiale de vérification de xcodebuild ignore les arguments de keychain de command line!

La command suivante:

 security list-keychains 

Ne returnnera pas le trousseau que vous avez défini. La solution de contournement est en fait simple:

 security list-keychains -s /path/to/your/keychain 

Et puis le bon certificate sera trouvé par le process de vérification initiale.