45 votes

Comment installer un certificat de développeur / une clé privée et un profil de provisioning pour le développement iOS via une ligne de commande?

Je configure le serveur de génération automatisé pour le projet d'application iOS. J'ai fait la plupart de cela. Maintenant, c'est le dernier tour. La sécurité.

Le certificat de développeur / clé privée et le profil de provisioning peuvent être facilement installés dans Keychain avec une interface graphique. Mais je veux le faire via une ligne de commande pour automatiser même le processus de configuration. Exportation / importation de certificats, de clés privées, de profils d'approvisionnement via une ligne de commande.

Toutes les recommandations seront très appréciées.

53voto

ablarg Points 390

L’interface graphique Toujours autoriser est déclenchée, car codesign n’a reçu aucun ACL pour accéder à votre clé privée. essaye ça:

 security import Certificate.p12 -k ~/Library/Keychains/login.keychain -P password -T /usr/bin/codesign
 

L'indicateur -T indique à la sécurité d'autoriser codesign à accéder aux clés que vous importez dans Certificate.p12.

15voto

Eonil Points 19404

J'ai trouvé des astuces de: http://lists.apple.com/archives/apple-cdsa/2010/Mar/msg00021.html

La commande est - security. Je suis en train de lire la page de manuel. Je vais mettre à jour cette réponse plus tard, après essai :)

--(edit)--

Tout d'abord, nous devons donner " Toujours Autoriser l'accès aux certificats/clés dans le Trousseau d'accès manuellement une fois. Je ne sais pas comment le faire sans interface graphique.

Et exécutez la commande security unlock-keychain avant l'exécution des outils de construction pour chaque session. J'ai utilisé SSH, donc j'ai dû l'exécuter une fois pour toutes les sessions de connexion.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X