私はXcodeサーバーと継続的な統合に取り組んでいます。私たちは本当に遅いビルド時間を経験しています。Xcodeサーバーの統合キャッシュの場所、RAMディスク、_xcsbuildd
私の最初の試みは、RAM DISKを使用してそこにビルドファイルを保存することです。私たちはSATAドライブを備えたMac miniを使用していますので、そのドライブをビルドプロセスの一部から削除することで、どれくらいの時間を節約できるかを試しています。
私はRAMディスクを作成しました: diskutil erasevolume HFS+ 'XcodeData' `hdiutil attach -nomount ram://8388608
私はラムディスクにDerivedDataの場所を設定しようとすることで始めたが、CIビルドデータを実行している場合は、そこに格納されていません。
すべてのCIのビルドデータは、/Library/Developer/Integrations/Caches
にあります。
私はシンボリックリンクln -s /XcodeData/IntegrationCaches/ /Library/Developer/Integrations/Caches
を試しましたが、CIの実行時にパーミッションエラーが発生します。
私はchmod 777 /XcodeData/IntegrationCaches/
を試しましたが、まだ許可の問題があります。
また、私のramdiskフォルダをRAMディスクフォルダのchown _xcsbuildd IntegrationsCaches
にchownしようとしました。
これまで運がなかったことはありません。
他に誰かがこのようなことをしたことがありますか?
インテグレーションキャッシュフォルダの内容を確認する必要がある場合、Finderでインスペクタウィンドウを開き、そのユーザアカウントを読み書き可能な承認済みユーザのリストに追加します。 – bolnad
@bolnadうん、それは私が考え出したものです。デフォルトでは、RAMディスクは所有権セットを無視しています。これは、そのボリュームのファインダ内の「情報を見る」ウィンドウでは無効にすることができます。ありがとう! – gngrwzrd
うれしいことに、私はあなたがこれを知っていると確信していますが、それはあまりにも多くの時間、幸運を無駄にすることができる場所です! – bolnad