ビルドエンジニアへの引き継ぎメモ

私たちが取り組むのは、
iOSビルドのマシン待ちをなくすこと

OSXBuildは、物理マシン1台を専有できるクラウドMacビルドサービスです。仮想マシンではなく、物理マシンをそのままご提供します。コード、ツールチェーン、署名の手順はお客様が管理し、必要なときに使えるノードでマシンをご利用いただけます。

2種類の機種・6つの物理ノード・ $20.1/日〜

必要なのは、マシンをもう1台買うことではありません

オフィスのMac miniが、
リリース工程の単一障害点になってはいけません

ビルドマシンの運用で難しいのは、最初のarchiveではありません。次のリリースでも、マシンやキャッシュ、署名資産を同じ状態で使えるかどうかです。

停電すると、タスクを引き継ぐ人がいない

オフィスのマシンは現地の環境に左右されます。停電やネットワーク障害が起きると、アーカイブ前にリモートタスクが止まることがあります。外出中なら、まず誰かにマシンのところまで行ってもらい、それからビルドログを調べることになります。

ビルドノードをオフィスのデスクから移し、365日安定して稼働させます。稼働状況や納品情報はコンソールで確認できます。

1台を共有すると、リリースの順番待ちが発生

日常のデバッグ、シミュレーターテスト、リリース用アーカイブが重なると、どのタスクを先に実行するか、誰がキャッシュを消したかをチーム内で調整しなければなりません。ビルドに成功しても、次の実行で依存関係を再ダウンロードした理由を説明することになります。

専用ノードでは、CPU、メモリ、ディスクを他のお客様と共有しません。ほかのタスクが終わるのを待たず、チームのニーズに合わせてrunnerを運用できます。

証明書が分散し、引き継ぎは口頭頼み

証明書、プロビジョニングプロファイル、書き出し設定、スクリプトが複数のPCに分散すると、「担当者しかわからない」リリース工程になりがちです。マシンを替えるたびに、手順も一から組み直すことになります。

ビルド設定はバージョン管理に含め、署名資産はアクセス制御されたキーチェーンや秘密情報管理の仕組みで保管することをおすすめします。秘密鍵を共有リポジトリに置かないでください。

これが、専用クラウドMacに特化している理由です。お客様の業務コードを変更したり、署名をブラックボックス化したサービスに置き換えたりはしません。管理できるマシンを提供し、既存のXcode、Fastlane、CIワークフローを安定して実行できる環境を用意します。

3つの提供方針

提供範囲を明確にしてからマシンをお届け

ご契約前に、利用できるマシン、料金の計算方法、設置場所をご確認いただけます。

物理マシン1台を、お客様1人に

提供するのは専用のMac miniです。共有ホストを分割した仮想マシンではありません。システム環境、ビルドキャッシュ、タスクキューはお客様が管理し、ほかのお客様のビルドタスクがこのマシンで実行されることはありません。

専有利用でも並列実行数が無制限になるわけではありません。複数のタスクを実行すれば、同じマシンのリソースを奪い合います。まず単一のアーカイブにかかる時間を測り、その後でテストの並列数を決めることをおすすめします。

分離とデータの取り扱いを見る

料金を公開し、項目ごとに表示

2種類の機種は、日・週・月・四半期単位でご利用いただけます。基本構成と、追加SSDおよびThunderbolt 5の並列接続オプションはそれぞれ料金を明記。「スターター構成」といった曖昧な表現で全体をまとめません。

お支払いはすべて米ドルです。注文前に機種、ノード、利用期間、オプション、支払総額をご確認ください。実際に利用できる決済方法は、バックエンドから返される内容をご確認ください。

料金一覧を見る

実際に提供中の6ノードのみ掲載

ノードは地図上の飾りではありません。2種類の機種はいずれも、以下の6つの物理ノードでご利用いただけます。空き状況はコンソールに表示される最新情報をご確認ください。

地理的な距離をネットワーク遅延の保証として案内することはありません。対話的な開発ではお客様からノードまでの接続経路が、CIではコードリポジトリ、依存関係の取得元、成果物の受け取り先の場所も影響します。

ノードを選んで注文
6つの物理ノード

チームの稼働時間に合わせてノードを選ぶ

まずチームの主な勤務地をもとに候補を絞り、実際の接続をお確かめください。以下のタイムゾーンは協業やビルドタスクのスケジュール調整に使うもので、ネットワーク遅延を保証するものではありません。

シンガポール

東南アジアのチームに適しています。日中の対話的な開発と夜間の自動アーカイブを同じ環境で行い、ローカル環境とCI環境の設定差を抑えられます。

ノードのタイムゾーン
UTC+8

東京

東アジアのチームに適しています。現地の営業日に合わせてnightlyを実行し、アーカイブ、書き出し、成果物のアップロードを翌日のテスト工程につなげられます。

ノードのタイムゾーン
UTC+9

ソウル

北東アジアのチームに適しています。同じ勤務時間内に、Xcode、シミュレーター、署名に関する問題を開発者同士で調査できます。

ノードのタイムゾーン
UTC+9

香港

華南や東南アジアのチームに適しています。リモートデスクトップを日常的に使う場合は、長期利用のノードを決める前に画質、解像度、ローカルのネットワーク経路もご確認ください。

ノードのタイムゾーン
UTC+8

米国東部

北米東部や西ヨーロッパと協業するチームに適しています。地域をまたいで作業を引き継ぐ際は、夏時間の切り替えで予定がずれないよう、ビルドの開始時刻をタイムゾーン付きで明記してください。

地域の協業に使うタイムゾーン
UTC−5 / −4

米国西部

北米西海岸のチームに適しています。リモート開発やリリース対応を現地の勤務時間に合わせられます。大西洋をまたぐチームは、ログと成果物の引き継ぎ先をあらかじめ決めておきましょう。

地域の協業に使うタイムゾーン
UTC−8 / −7

米国のタイムゾーンは標準時間と夏時間で変わります。自動タスクではタイムゾーンを明示してください。マシンのホスト名、ポート、接続情報はコンソールに記載された内容をご確認ください。ノード選びの説明は、実際のネットワーク接続テストに代わるものではありません。

利用者の視点から

オフィスのデスクを減らし、引き継げるノードを

チームにとって大切なのはマシンの設置場所ではなく、次のビルドでも使い慣れた環境をそのまま使えることです。

「OSXBuildに移行してから、ビルドマシン用のデスクを探さなくてよくなりました。」

エンジニアリングマネージャー

「香港ノードは近く、リモートデスクトップでXcodeの画面を動かしても快適です。」

個人でiOSアプリを開発

リモートデスクトップの使い心地は、ローカルネットワーク、ノードまでの距離、画質設定によって異なります。移行前にご自身のプロジェクトで接続、依存関係のダウンロード、一連のアーカイブを試し、そのうえで利用期間を決めてください。

向いている用途と、サービスの範囲

繰り返し行う作業を専用マシンへ

提供するのはビルド環境であり、プロジェクト設定の代行ではありません。ソースコード、依存関係のバージョン、署名権限、成果物のバックアップは、引き続きチームで明確に管理してください。

iOS / macOS開発者

macOSのGUIとコマンドライン環境で、Xcode、シミュレーター、アーカイブ、アプリの書き出しをリモートで利用したい方に。軽量なビルドなら、M4 / 16GB / 256GBからお試しいただけます。

初回の移行では、Xcodeのバージョンと依存関係のロックファイルを揃え、クリーンビルドを1回実行してからキャッシュを段階的に戻してください。ローカルでたまたま動いたパスを、チーム共通の設定として扱わないようにしましょう。

接続方法と移行手順を見る

CI/CDチーム

専用runner、保持できる依存関係キャッシュ、管理可能な署名フローが必要なチームに。既存のGitHub Actions、GitLab Runner、Jenkinsと連携し、既定のルールに沿ってアーカイブ成果物を引き継げます。

まず単一タスクの基準値を定め、アーカイブ時間、ディスク使用量、テストに使うリソースを記録してから並列数を増やしましょう。ビルドの成功だけでは配布完了とはいえません。書き出し、アップロード、テストグループによる確認もパイプラインに含めてください。

ビルド量に合わせて構成を選ぶ

Apple SiliconでAIを検証する方

実際のApple Silicon環境でMLXやllama.cppを使い、モデルの読み込み、推論処理、ツールの互換性を検証したい方に。メモリを多く使う場合は、M4 Pro / 64GB / 2TBからご検討いただけます。

モデルを実行できるかどうかは、重みのサイズ、量子化方式、コンテキスト長、ランタイムの負荷によって異なります。マシンの台数を増やす前に、ご自身のモデルとデータでお確かめください。

実験の要件を相談する

利用期間が終わる前に、成果物を引き継ぐ

ソースコード、スクリプト、IPA、ログ、保存が必要な資料は、お客様が管理する場所にバックアップしてください。利用期間終了後はディスクを安全に消去し、システムを再インストールします。ノード上のディスクを唯一の保存先にしないでください。更新、注文、請求書はコンソールで確認できます。問題があれば、ログインしてサポートチケットを送信するか、次のメールアドレスにご連絡ください。 support@osxbuild.com。

次のiOSビルドは、クラウドで

機種、利用期間、ノードを選び、ご自身のプロジェクトでアーカイブを一度実行してみましょう。大量のビルドや移行について相談する際は、タスク量とツールチェーンのバージョンをお知らせください。