web-dev-qa-db-fra.com

Jenkins: où est le fichier login.keychain dans le dossier / Users / * name * / Library / Keychains?

J'essaie d'empaqueter un ipa iOS avec Jenkins. Je reçois donc le plugin de gestion des trousseaux et des profils de provisioning et j'essaie de télécharger le trousseau dont il a besoin. Mon système d'exploitation Mac est sierra (10.12.2), j'entre dans le dossier/Users/admin/Library/Keychains. Mais il n'y a qu'un fichier appelé login.keychain-db et cela ne fonctionne pas lorsque j'ai téléchargé ce fichier sur Jenkins. L'erreur indique que le fichier téléchargé "login.keychain-db" n'est pas un trousseau ou un fichier de profil d'approvisionnement. Alors, comment puis-je le résoudre ou où puis-je trouver le fichier login.keychain? Merci d'avance.

17
Chipmuck

Vous pouvez simplement déverrouiller votre trousseau via Shell. Dans la configuration de votre projet Jenkins, ajoutez une étape "exécuter un script Shell":

security unlock-keychain -p PASSWORD ${HOME}/Library/Keychains/login.keychain

security set-keychain-settings -t 3600 -l ${HOME}/Library/Keychains/login.keychain

Remarque. Le 'set-keychain-settings' laisse le trousseau déverrouillé pendant un certain temps (3600s), donc votre processus de construction (xcodebuild dans votre cas) a toujours accès au trousseau quand il signe l'IPA.

Note 2. L'extension du trousseau a changé avec Sierra, c'est maintenant .keychain-db en effet. L'utilisation directe de la commande de sécurité ne vous affectera pas.

13
Tanguy G.