専有の物理ノード
Mac miniを1台まるごとお客様専用で利用できます。CPU、ユニファイドメモリ、SSDを他の利用者と共有せず、分割や過剰販売もありません。ビルドキャッシュは専用ノードに保持されるため、タスクのたびに環境を作り直す必要がありません。
ホスト1台 = 1テナント
専有の物理Mac。仮想マシンではありません。5拠点、日・週・月・四半期払い、1日$21.1から
まずは1台から。当日中にビルドフローへ接続できます。利用可能状況と提供内容はコンソールの表示をご確認ください。
ビルド例(リアルタイムデータではありません)。ビルド時間はプロジェクト、依存関係、キャッシュによって異なります
iOSビルド用Macに必要なのは、安定性、再現性、そしていつでも使えること。ログイン後、ハードウェア、権限、ツールチェーンを確認してから、最初のパイプラインを接続できます。
Mac miniを1台まるごとお客様専用で利用できます。CPU、ユニファイドメモリ、SSDを他の利用者と共有せず、分割や過剰販売もありません。ビルドキャッシュは専用ノードに保持されるため、タスクのたびに環境を作り直す必要がありません。
ホスト1台 = 1テナント
Xcode、シミュレータ、MetalをmacOS上でネイティブに実行できます。GUIとコマンドラインの両方を使え、仮想化による開発ツールの制限を回避する必要もありません。ハードウェア情報を確認し、Mac miniのモデルを照合できます。
system_profiler SPHardwareDataType
まず1日借りて依存関係と署名フローを確認。リリース前の集中作業には週単位、常設runnerには月単位または四半期単位が適しています。各期間の料金をそのまま表示し、月額を日割り換算して初回料金として見せることはありません。
M4 Base:1日$21.1 · 1週間$57.1 · 1か月$105.7
すべてApple Silicon搭載のMac miniです。3モデルとも5拠点すべてでご利用いただけます。メモリとSSD容量はモデルごとに固定され、追加の作業領域はオプションで選択できます。
ID m4-16-256
専有物理ノード · Mac mini
ID m4-24-512
専有物理ノード · Mac mini
ID m4pro-64-2tb
専有物理ノード · Mac mini
+1TB / +2TB SSDとThunderbolt 5による並列処理を追加できます。ネットワーク仕様、ツールチェーンのバージョン、提供内容は注文時およびセットアップ時にご確認ください。
仕様とオプションをすべて見るすべて米ドル建てです。各カードで日・週・月・四半期を切り替えられます。表示額は選択した期間の基本料金で、日割り換算額ではありません。
M4 · 16GB · 256GB
$21.1/日
単一schemeのプロジェクトや短期間の検証に最適です。フルビルド時間、キャッシュ使用量、ピークメモリを記録してから、常設環境を拡張するか判断できます。
M4 · 24GB · 512GB
$41.4/日
依存関係のキャッシュを継続的に蓄積し、複数のschemeを切り替えて使うチームに最適です。同時に複数のビルドが必要なら、複数ノードにタスクを分散できます。直列キューを並列処理と混同しないようにしましょう。
M4 Pro · 64GB · 2TB
$59.5/日
大規模プロジェクトのフルビルド、シミュレータテスト、ローカルモデルの推論検証に最適です。64GBのユニファイドメモリと2TB SSDで、複数の依存関係やビルド成果物を保存できます。
基本料金は1日$21.1から。+1TB SSDは1日$3から。オプション料金は別途かかります。お支払い前にモデル、期間、拠点、合計金額をご確認ください。
期間別料金とオプションクラウドMacを1台からN台までGitLabまたはGitHub Actionsのself-hosted runnerとして登録できます。まず1本のパイプラインを動かし、次に複数のschemeを別々のノードへ振り分けましょう。
同じcommitでフルビルドと増分ビルドの時間を記録し、証明書、依存関係のダウンロード、DerivedDataの使用量を確認します。まずは各runnerで同時に1タスクを実行するところから始めましょう。
macOS、Xcodeのバージョン、プロジェクトの用途に合わせてラベルを設定します。マトリクスタスクを複数ホストで同時に実行するには、一致するラベルを持つrunnerが複数台必要です。
プロジェクトに必要なXcodeのバージョンを選び、継続して利用します。DEVELOPER_DIRでバージョンを指定し、アーカイブとキャッシュの保存先を分けて、複数タスク間の上書きを防ぎます。
再現可能なビルドに必要なのはXcodeのバージョンだけではありません。依存関係のロックファイル、署名情報、書き出し設定、環境変数もチームの変更記録に含めましょう。
name: ios-nightly
on:
workflow_dispatch:
schedule:
- cron: "0 13 * * *"
jobs:
archive:
runs-on: [self-hosted, macOS, xcode-16.2]
strategy:
fail-fast: false
matrix:
scheme: [App-Prod, App-Staging, Widget]
env:
DEVELOPER_DIR: /Applications/Xcode-16.2.app/Contents/Developer
steps:
- uses: actions/checkout@v4
- name: Archive
run: |
xcodebuild archive \
-workspace App.xcworkspace \
-scheme "${{ matrix.scheme }}" \
-configuration Release \
-archivePath "build/${{ matrix.scheme }}.xcarchive"
- name: Export
run: |
xcodebuild -exportArchive \
-archivePath "build/${{ matrix.scheme }}.xcarchive" \
-exportPath "build/export/${{ matrix.scheme }}" \
-exportOptionsPlist ci/export.plist
workspace、scheme、Xcodeのパスをプロジェクトの設定に置き換えてください。GitLabもrunnerのラベルでタスクを割り当てます。証明書と秘密鍵は保護された変数または専用キーチェーンで管理し、リポジトリには保存しないでください。
シンガポール、日本(東京)、韓国(ソウル)、香港、米国西部の全5拠点で、3モデルすべてを提供。作業者とリポジトリの所在地を確認し、実際の接続経路をお確かめください。
東南アジア
東アジア
北東アジア
華南・東南アジア
北米西海岸
レイテンシは拠点ごとの参考値であり、お客様のネットワークから実測した結果ではありません。SSHでのアップロード・ダウンロード、リポジトリの取得、VNC画面の表示速度は、それぞれの接続経路によって異なります。米国西部のタイムゾーンは夏時間により変わります。全拠点が365日稼働し、利用可能状況はコンソールにリアルタイムで表示されます。
スクリプトやCIにはSSH、Xcodeやシミュレータの操作にはVNC画面共有を使います。コンソールでホストアドレスと認証情報を確認し、接続ガイドに沿ってクライアントを設定してください。
依存関係のインストール、runnerの登録、ビルドログの確認に使います。初回ログイン後にパスワードを変更し、公開鍵を追加してください。鍵での接続を確認してから認証設定を変更しましょう。
ssh -i ~/.ssh/armrdp admin@<ホストアドレス>Xcodeの設定、キーチェーン、シミュレータの確認に使います。SSHトンネル経由で接続し、ローカルポートをホストの画面共有サービスに転送する方法がおすすめです。
ssh -N -L 5901:localhost:5900 admin@<ホストアドレス>GUI操作と自動化で同じプロジェクトファイルとツールチェーンを共有できるため、2つの環境間でビルドディレクトリをコピーする必要はありません。
依存関係のインストール、アーカイブ実行、ログと成果物の確認
プロジェクト設定、シミュレータ、署名、UIデバッグ
vnc://localhost:59013つの役割からの一人称の要望をもとに、ノードの使い方をご紹介します。利用シーンの例であり、顧客評価や性能統計ではありません。
「リリース週は、3つのschemeそれぞれに専用のアーカイブ先を用意したい。タスクを別々のrunnerに割り当てられれば、同じキューをずっと見張らずに済みます。」
iOSチームリード · 要望例
「Xcodeのバージョンと依存関係のロックファイルを一緒に固定したいです。同じcommitで結果を確認してから、このMacを本番パイプラインに組み込みます。」
CI/CDエンジニア · 要望例
「まずM4 Baseを1日借りて、証明書とGitLab runnerを動かします。プロジェクトの実際のリソース使用量を把握してから、長期プランを選びます。」
個人開発者 · 要望例
いいえ。専有の物理Mac miniを1台お届けします。レンタル期間中、ハードウェアリソースを他の利用者と共有することはありません。システム情報でチップ、メモリ、ストレージの構成を確認できます。
プロジェクトに合わせて複数バージョンをインストールし、保持できます。ビルドスクリプトでDEVELOPER_DIRに使用するバージョンを指定するか、xcode-selectで切り替えてください。インストール前にmacOSとの互換性と空きディスク容量をご確認ください。
まず1台で単一タスクを実行し、ピークメモリ、アーカイブ時間、ディスクI/Oを記録してください。そのうえで、同じホストで並列実行するか、ノードを追加するかを決めます。schemeの数だけでは完了時間を見積もれません。
証明書は専用キーチェーンに保存し、機密情報はCIの保護された設定に登録してください。アーカイブと書き出し成果物はチーム所有のストレージに同期します。レンタル終了前にバックアップを済ませ、不要になった認証情報は無効にしてください。
実行可能な Swift スクリプトでエスケープと配列添字を確認し、存在しないフィールドと正当な null を区別します。
CI/CD整数の最大剰余法で割合の合計をそろえ、同順位の処理、ゼロの重み、整数オーバーフローをクラウド Mac 上で検証します。
Securityパディングなし Base64URL の入力契約を Swift で検証。不正文字、非正規の末尾ビット、過大な入力を回帰テストで拒否します。
新しい記事を準備中です。まずはブログ一覧をご覧ください。
期間と構成を選び、注文合計をご確認ください。基本料金とオプション料金は別々に表示されます。利用可能な決済ゲートウェイはバックエンドの表示をご確認ください。
オンチェーン決済の前にネットワークと受取情報をご確認ください。カード決済は決済ゲートウェイの画面に沿って完了してください。決済状況が未確定の場合は、同じ支払いを重複して作成せず、まず注文状況をご確認ください。
M4 Baseは1日$21.1から。まずはプロジェクト1つ、runner 1台で始め、動作を確認してからiOSビルドファームを拡張できます。
タイムライン、runner、キューの表示はフローの例であり、リアルタイムの稼働データではありません。注文前にコンソールで構成、料金期間、実際の提供内容をご確認ください。ビルド時間はプロジェクト、ツールチェーン、キャッシュによって異なります。