同一ホストで複数Jobのcodesignが重なると典型はKeychainロックと共有パス。プール前提は Mac CI リソースプール記事、ランナー境界は Actions マルチランナー統合 参照。
1. Keychain
共有ログインKeychainは手早いがunlockと同時codesignで詰まりやすい。ジョブID付き一時Keychainを作り終了時に捨てるのが再現性に強い。並列度は同一チェーン同時署名の許容から逆算する。
2. Provisioning Profile とワークスペース
ライブラリ直置きはUUID上書きが起きやすい。ツリー配下+Specifierが安全。-derivedDataPathとTMPDIRはRUN_IDで切り、キャッシュはXcode版キーとロックを先に決める。
3. 落地手順と比較FAQ
手順:同時codesign上限→専用Keychain作成〜delete→プロファイルUUID→ログとexportを一意パス。FAQ:共有ログインは単一并列まで/Secret毎回はI/O増/ホスト分離はコスト増。署名直列+ビルド並列がプールの現実解。
4. ミニチェックリスト
- 同一Keychainへの同時アクセスがないか
- プロファイルUUIDが一意か
derivedDataPathがジョブごとに分岐しているか
署名まわりを静かに回すホスト選び
隔離後も帯域不足でcodesignが列をなす。Apple Silicon Mac miniは統合メモリと低アイドル電力、macOSはsecurityとGatekeeper/SIP/FileVaultで説明しやすい。再現性を上げるならMac mini M4を起点に。
Macstripe ホーム
で構成を確認し、今すぐ購入導線から一台を確保してください。