MacをmacOS Sierra 10.12.1にアップデートすると、実際のデバイスでアプリケーションを実行する時間が大幅に増加しました。 「カスタムスクリプト「Embed Pods Frameworks」を実行する」と「コピーSwift標準ライブラリー」」をビルドするには、30分以上かかります。
誰かが同じ問題に直面していますか?
キーチェーンを確認してください。 Sierraを10.12.1に更新した後、私の証明書の1つが500コピー以上あり、他のいくつかは数百回複製されました。
私はすべての重複を削除して、それぞれ1つだけを保持しました。コード署名時間は、フレームワークあたり30秒から、約1秒に短縮されました。
証明書が複製された方法と理由はわかりませんが、問題のタイミングから、Sierraの更新が原因であることがわかります。
COCOAPODS_PARALLEL_CODE_SIGN
フラグも現在のリリースビルドで評価されるため、CocoaPodsのベータ版のインストールをスキップできます。
最善ではない代替ソリューションを見つけましたが、少なくともスピードアップしています。わたしにはできる)
Cocoapodsは数日前に新しいベータ版をリリースしました。
埋め込みフレームワークスクリプトの実行時に並列コード署名が可能になります( https://github.com/CocoaPods/CocoaPods/pull/6088#issuecomment-2574417 )
gem install cocoapods --pre
+
アイコンをクリックしますCOCOAPODS_PARALLEL_CODE_SIGN
をtrue
に設定しますそして、増加した構築速度をお楽しみください!
キーチェーンは問題ないように見えるが問題がある場合–設定を確認し、このファイルのすべての重複を削除します:~/Library/Preferences/com.Apple.security.plist
通常の設定では、このファイルには、ログインキーチェーン参照を含むレコードを1つだけ含める必要があります。
上記のすべてのアプローチがうまくいきませんでした。大きな助けとなったのはresetting the System.keychain
、サイズは25 MBでした。これにより、CIシステムのビルド時間が最大40%短縮されました。
分析
du -h /Library/Keychains/System.keychain
good: 60K
bad: 25MB
リセット
Sudo systemkeychain -vfcC [password]
重要:System.keychainに保存されている重要なキー/証明書/パスワードがある場合、リセットを実行する前にそれらをエクスポートし、必要に応じてそれらを再インポートすることができます。これは私には必要ありませんでした。私の新しいSystem.keychainにはコンテンツがなく、プロジェクトの構築はまったく問題なく動作します。