Après avoir essayé quelques options, ce sont les solutions que j'ai pu l'utiliser sur mon serveur CI:
Inclure le Développeur certificat et la clé privée ainsi que la génération automatique d'profils de configuration dans l'IC de l'environnement:
À l'aide de Automatic signing
vous oblige à utiliser un Developer
certificat et auto-generated provisioning profiles
. Une option est d'exporter votre certificat et la clé privée (Applications -> Utilitaires -> Trousseau d'Accès) et l'auto-générés profils de configuration pour l'IC de la machine. Une façon de trouver le générés automatiquement les profils de configuration est de naviguer à l' ~/Library/MobileDevice/Provisioning\ Profiles/
, déplacer tous les fichiers vers un dossier de sauvegarde, ouvrez Xcode et archiver le projet. Xcode permettra de créer des auto-généré de développement de profils de configuration et de les copier à l' Provisioning Profiles
le dossier.
xcodebuild archive ...
permettra de créer un .xcarchive
signé pour Development
. xcodebuild -exportArchive ...
peut puis de démissionner le bâtir Distribution
Remplacer "Automatique" et "Manuel" lors de la construction sur l'IC de l'environnement
Avant d'appeler, xcodebuild
d'une solution de contournement consiste à remplacer toutes les occurrences de ProvisioningStyle = Automatic
avec ProvisioningStyle = Manual
dans le fichier de projet. sed
peut être utilisé pour un simple de trouver un remplacement dans l' pbxproj
le fichier:
sed -i '' 's/ProvisioningStyle = Automatic;/ProvisioningStyle = Manual;/' <ProjectName>.xcodeproj/project.pbxproj
@thelvis également créé un script Ruby pour ce faire à l'aide de l' xcodeproj
gem. Le script vous donne un meilleur contrôle sur ce qui est changé.
xcodebuild
sera alors utiliser la signature du code d'identité (CODE_SIGN_IDENTITY
) mis dans le projet, ainsi que les profils de configuration (PROVISIONING_PROFILE_SPECIFIER
). Ces paramètres peuvent également être fournis en tant que paramètres d' xcodebuild
et ils vont remplacer la signature du code de l'identité et/ou un profil de configuration définie dans le projet.
EDIT: avec Xcode 9, xcodebuild
a une nouvelle version des paramètres paramètre CODE_SIGN_STYLE
à choisir entre Automatic
et Manual
donc il n'y a pas besoin de trouver et de remplacer les occurrences de automatique à manuel dans le fichier de projet, plus d'infos dans la WWDC 2017 Session 403 Quoi de neuf dans la Signature de Xcode et Xcode Serveur
Changement manuel de la signature de
Manuel de signature de fournir un contrôle total sur le code de la signature des identités et profils de configuration utilisé. C'est probablement la solution la plus propre, mais avec l'inconvénient de perdre tous les avantages de la signature Automatique.
Pour en savoir plus sur la signature de code avec Xcode 8 je recommande vraiment cet article ainsi que le WWDC2016 session 401 - Ce qui est nouveau dans Xcode application de signature