2026、リモート Mac × Bitrise セルフホスト macOS エージェント、クラウドの分課金、iOS パイプライン Runbook

モバイルチームは Bitrise のクラウド macOS専用リモート Mac 上のセルフホスト エージェントの間で揺れます。前者は請求とキューの意味が明快ですがスタック境界が固定され、後者は VPS のように機械契約を握れますがシークレットとディスク運用が必須です。読者:プラットフォームエンジニアと iOS リード。課題:分課金、スタック追従、エージェント プール、キーチェーン境界が絡み合うこと。本文の約束:暗黙の前提を 7 つ解体し、四者対照表(GitHub Actions RunnerGitLab Runner と相互参照)、6 ステップのオンボーディング Runbook、FAQ で レンタル料金ヘルプセンター へ誘導します。

01

Bitrise と専用 macOS を承認する前に潰すべき 7 つの暗黙の前提

Bitrise は YAML、ステップマーケット、分単位のダッシュボードを束ねますが、実際の障害は Xcode の指紋署名境界ディスク増幅 の交点に集中します。レビューから外すとロゴ論争になります。

  1. 01

    セルフホスト=運用ゼロ:エージェントは実行端末に過ぎず、Ruby/Bundler、CocoaPods/SwiftPM、DERIVED_DATA の契約は自社で管理します。依存関係とディスク運用 と揃えます。

  2. 02

    クラウド分とリース CapEx が線形に足せる:リリース週のスパイクと夜間アイドルのコアを財務モデルに載せます。常時オンラインの専用ノードはアイドルコストをビルドごとに按分します。

  3. 03

    Xcode/スタック更新を軽視:クラウド Job は自動移行する一方、セルフホスト側はカナリア Workflow とロールバック窓が必要です。

  4. 04

    署名を個人ノート PC に置く:エンタープライズ証明書と match は専用 CI ユーザーとローテーション Runbook が前提です。Fastlane 無人 CI を参照します。

  5. 05

    パス隔離なしで Bitrise と他オーケストレータを同居:エンタープライズビルドプール と同じく、名前のないワークスペースはリリース列車で衝突します。

  6. 06

    初回 GUI 依存を過小評価:SSH と VNC のチェックリスト に沿って一度だけ対話セッションを用意し、その後ヘッドレスに戻します。

  7. 07

    ネットワーク確認がブラウザ疎通で止まる:安定した外向き通信とコンソール コールバックが要です。TLS インスペクションはワーカーをゾンビ化させ、アプリログには出ません。

共通原因は「CPU レンタル」と見なすことです。ツールチェーン指紋とコンプライアンス境界を持つ本番ノードとして扱ってください。CircleCI/Buildkite も検討中なら CircleCI ハイブリッドBuildkite Agent で制御面と実行面を分けて読みます。

運用では第二エージェント購入前に キュー深さ P95Archive E2E の所要分布週次ディスク増分 を公開します。無ければ混沌を複製するだけです。オフィスの場つなぎノート PC と比べれば、リースした専用ハードは電源・部品・リモートハンズの予測可能性が高く、グレーな仮想化より Apple Silicon 実機は署名と審査リスクを下げます。差分は RFC に書き、チャットに残さないでください。

02

四者対照:Bitrise クラウド macOS、リモート Mac のセルフホスト、GitHub Actions、GitLab Runner

万能解はありません。ワークフローがリポジトリにどれだけ近いか、分課金を誰が背負うか、macOS 容量が物理的に専用かをレビューで固定します。

次元Bitrise クラウド macOSBitrise セルフホスト(専用リモート Mac)GitHub Actions セルフホストGitLab Runner(shell)
制御面Bitrise UI/API とリポ YAML同上+エージェント設置パスとプールを明示runs-on ラベルと Runner グループtags と登録スコープ
課金の捉え方Workflow 分+スタック段階クラウド分と固定リースの二軌が多いActions 分+減価償却Runner 同時実行ライセンス+機械
弾力性並列ステージとマーケットが成熟1 台あたりの CPU/IO 上限が正直マトリクスとラベル分割resource_group に相当する互斥
典型用途単体テストや IPA 試作を速くArchive・企業署名・長統合でディスクを温めたいGitHub イベント駆動に深く入り込んでいるGitLab の権限モデルと強結合

Bitrise の文脈で「VPS のように Mac を借りる」とは、ワークフロー体験は維持しつつ Xcode・シークレット・NVMe を契約上の専用ホストに閉じ込めることです。

Steps にロックイン済みでも一部ジョブだけディスクと署名領域を予測したい場合、軽検証はクラウドスタック重ビルドはセルフホスト プールへ Workflow 条件で明示分割します。単にクラウド並列を上げるより、「クレジット待ち」から「自前キュー待ち」へピークが移り、失敗は SSH 可能なホスト近傍に寄ります。

Bitrise・GitHub・GitLab で「誰が署名を変えられるか」「誰がキャッシュを消せるか」を RACI 化しないと、証明書期限の午後に三本のパイプラインが同時にページします。財務比較は 購入対レンタル TCO の前提表を再利用してから Bitrise のスタック切替を議論します。

03

リースした専用リモート Mac に Bitrise エージェントを載せる 6 ステップ

順序が重要です。まずアカウントとディレクトリ、次にエージェント登録、最後に並列化です。メニュー表記は Bitrise 最新ドキュメントに従い、ここでは工学スケルトンを示します。

  1. 01

    専用 macOS CI ユーザーを用意:個人の Apple ID セッションと混ぜない。~/bitrise-ci のような接頭辞を標準化します。

  2. 02

    ツールチェーン指紋を固定:xcodebuild -version、Ruby、Bundler をリポジトリ文書に記録します。

  3. 03

    ベンダー手順でセルフホスト エージェントをインストール/登録:登録トークンはローテーション秘密として期限とともに Runbook に載せます。

  4. 04

    Workflow を正しいスタック/エージェント プールにバインド:既定がクラウド Worker のまま残りがちです。

  5. 05

    hello Workflow:checkout と xcodebuild -list でキューからホストまで閉ループを証明します。

  6. 06

    同一 Git SHA をクラウド/セルフホストでカナリア:並列を増やす前に差分を見ます。

bash · 受け入れプローブ
xcodebuild -version
sysctl hw.memsize hw.ncpu
df -h /
/usr/bin/security find-identity -v -p codesigning
info

ヒント:システムスリープを無効化し、再起動後も LaunchDaemon/LaunchAgent が生存するか確認します。昼は緑・夜は赤は Bitrise 障害に見えがちです。

閉ループ後は キュー待ち時間ホストのディスク水位 に監視を配線します。前者はプール誤バインド、後者はキャッシュ暴走を暴きます。XCTest 並列 と同様、UI テストとコンパイル偏重ジョブは IO プロファイルが異なります。

04

並列・署名・キャッシュ:オンライン Worker は無限容量ではない

緑のダッシュボードはアイドル CPU を意味しません。依存解決・コンパイル・署名のスパイクは時間でずれます。mutex ステージやカスタムキューで正直な上限を表現してください。専用リモート Mac は共有ノートや不安定な VM より NVMe 遅延キーチェーン連続性 に優れますが、ディスクガードレールなしでは金曜深夜に git/Xcode の半書き込み工件が残ります。

warning

注意:空きディスクがチーム閾値を下回ったらスケジューリングを止め、意図的にクリーンし削除パスを監査ログに残します。

財務は単価だけでなく「リリース週のヒロイク時間削減」と「緊急クラウド分購入の回避」をセットで追います。セルフホストは Bitrise 請求の見え方と引き換えにパッチ、Xcode 更新、エージェント更新を抱えます。純粋自社データセンターは保守を内製化し、リースの専用ホストは多地域ロジを束ねることが多いです。三者を四半期レビューに記録します。

セキュリティ面ではセルフホストが任意のリポジトリスクリプトを実行するため、本番サーバーとして SSH 鍵ローテーション、鍵のみ認証、最小 sudo、ビルド用アカウント分離を行います。再現ビルド指紋 と突き合わせ、ツールチェーン更新ごとにカナリアとロールバック タグを用意します。

05

社内 RFC に貼れる 3 つの参照値

閾値はリポジトリ規模と並列方針に合わせて調整します。

  • ディスク水位:空き容量 ≥20% を維持し、破壊的クリーンの前にスケジュールを止めます(CircleCI/Buildkite 記事と同じ基準)。
  • 並列プローブ:ジョブごとのピークメモリを基準に線形で並列を増やします。Apple Silicon ではリンカ尖峰が平均を大きく上回ります。
  • ツールチェーン台帳:Xcode、エージェント、Bitrise CLI(利用時)を固定記録し、更新のたびにクラウド/セルフホスト両レーンでカナリアを走らせます。

借用ノート PC はスリープ方針・OS 更新・電源操作と戦い、グレーな macOS 仮想化は監査に耐えません。Bitrise を慣れたオーケストレーション層に残し、macOS 実行を 専用・常時オン・SSH 親和 のリモートノードへ載せると、パイプラインが「たまに緑」から「契約可能」へ進みます。個人所有のワンオフ機や不透明な共有ホストに対し、NodeMini の Mac Mini クラウドレンタルは SSH 契約・ディスク段階・再現可能な実行プロファイルを明瞭にし、iOS CI/CD と自動化基盤の土台として優れています。SKU は レンタル料金、オンボーディングは ヘルプセンター を参照してください。

本 Runbook を社内のツールチェーン変更レベルにバインドし、Xcode のマイナー/メジャーで承認とキャッシュ失効範囲を分けます。アップグレード当日に全赤でも署名/ディスク境界で説明できない状態を防ぎます。

FAQ

よくある質問

クラウドは公式スタックと弾力的な分に強く、専用ハードはシークレット領域と温かいキャッシュに強いです。軽ジョブはクラウド、重い署名はセルフホストへ。機種はまず レンタル料金 で比較してください。

DerivedData とキャッシュを Unix ユーザーまたはマウント単位で隔離し、署名用キーチェーンも分けます。ヘルプセンター と Runner 深化記事を併読してください。

エージェントプロセスとスリープ方針を確認し、続けてプール/スタックのバインドを見ます。プロキシが HTTPS を遮る場合、コンソールは間接症状だけかもしれません。ホスト側でパケット証跡を取得してください。