判断マトリクス · Fastlane Match · 共有リモートMac · Codesign

2026年小チーム共有リモートMac判断表:Fastlane Match並行取得・鍵束分区Codesignキュー待ち秒

2026年5月19日 Meshmac 約9分

2〜8人のiOSチーム共有リモートMacでビルドすると、Match git衝突・鍵束分区漏れ・Codesignキュー無音待ちが再現性を壊します。本文は判断表flock早見五手順FAQです。

ホームSSHとVNC選定共有構築機の権限隔離FAQを先に揃えてからMatchを触ってください。

共有リモートMacで起きる三つの痛み

  1. 並行Match。 同時match developmentで暗号化gitが破損。
  2. 鍵束混線。 配布証明書がloginへ入りレーンと不一致。
  3. 無音ハング。 flock待ちがジョブ上限超過。

判断表:レーン鍵束 vs 共有loginのみ

観点 Match+レーン鍵束 login共有のみ
並行取得 shallow+読取ロック、書込直列 push競合・証明書欠落
Codesignキュー 1台1アーカイブ、CIは待ち行列 並列archiveが認証を奪い合う
MeshMac 2〜8席 共有M4の既定 検証機のみ

Match gitの並行取得とshallowクローン戦略

読取は重ね、書込はmatch-repo.lockで直列化。git clone --depth 1とfetch shallowをMatch前に実行。

export GIT_SSH_COMMAND="ssh -o ControlMaster=auto -o ControlPath=/tmp/ssh-%r@%h:%p"
flock -w 180 /var/run/meshmac/match-repo.lock \
  fastlane match development --readonly false

login鍵束分区(ヘッドレス署名向け)

レーンは/srv/keychains/team-a-ci.keychain-db。アンロックはCodesign内のみ。MATCH_KEYCHAIN_NAMEをlane envへ(権限FAQ参照)。

構築ロック・flock待ち・Codesignキュー待ち秒

下表をRunbookへ貼り、実測のロック待ち百分位で調整します。

リソース flock/キュー ジョブ上限
Match git書込 flock -w 180 match-repo.lock レーン15分
Codesign/archive flock -w 600 codesign.queue 45〜90分
DerivedData同期 flock -w 60 dd-sync.lock 35〜60分
待ち行列深度 レーン最大12件 空き15%未満で即失敗

失敗再試行・監査フィールド・運用シグナル

fetch一過性のみ再試行2回、鍵束失敗は0回。JSONにlanematch_git_shalock_wait_ms。待ちp95が120秒超×3で通知。

MeshMac共有機への導入五手順

  1. 凍結。 アーカイブ排水・match nuke禁止。
  2. shallow。 ブランチ固定とmatch-repo.lock設置。
  3. 鍵束。 レーン鍵束へIdentityを一度だけ投入。
  4. キュー。 archiveをcodesign.queueのflockで包む。
  5. 監査。 JSON出力とアンロック失敗ドリル。

設計レビューに貼れる三つの目安

  • shallow並行読取は共有M4のMatch冷起動を短縮し、書込競合は広げません。
  • レーン鍵束はGUI loginセッションとCI署名を分離します。
  • 二レーン共有時のflock -w 600は45〜90分アーカイブの実務既定です。

FAQ:並行・鍵束・第二ノード

並行development? shallow+書込flock時のみ。nuke並行禁止。

login鍵束? 不可。レーン鍵束をCodesign内でアンロック。

第二ノード? 待ちp95が2分超のときレーンをノード分割。

まとめ:Match書込を直列化し、鍵束を分区してからノードを増やす

可引用:並行読取+書込直列レーン鍵束flock -w 600既定。MeshMac多ノード料金LB/FOで第二ノードへ。

MeshMac · Fastlane Match · 多ノード

Macノードと接続方式を選ぶ

共有リモートMacでMatchを運用。SSHとVNC比較権限FAQ料金(ログイン不要)。

今すぐ申し込む