Skip to content
Latchkey

macOS runnerのコストとは?なぜAppleのCIは最も高価な1分なのか

macOS runnerのコストとは、Appleハードウェア上でCIを実行する際の1分あたりの価格であり、群を抜いて最も高価なオプションです - Linuxの1分のおよそ10倍です。

CIの請求額が驚くほど高い場合、macOS runnerが有力な容疑者です。iOSおよびmacOSのbuildにはAppleハードウェアが必要ですが、これは希少でライセンス制のため、プロバイダーは高い割増料金を請求します。わずかなmacOSのCIが、それ以外は安価なpipelineを支配してしまうことがあります。

macOSがどれだけ高いか

GitHub Actionsでは、macOSの1分はLinuxの1分のおよそ10倍の割当を消費します。Linux 2-coreが約$0.008/minであるのに対し、macOSは1分あたり数セントの範囲になります。20分のmacOS buildは、数時間分のLinux CIと同じくらいのコストになり得ます。

なぜこれほど高価なのか

Appleのライセンスは、macOSをAppleハードウェア上で実行することを要求します。プロバイダーは汎用のクラウドVMを立ち上げるのではなく、そのハードウェアを購入し、ホストし、保守しなければなりません。そのハードウェアの希少性とライセンスの割増料金が、1分あたりの料金に直接反映されます。

無料枠への影響

約10倍の倍率のため、macOSは含まれる分数を10倍速く消費します。2,000分の無料枠はmacOSの時間ではわずか約200分に相当するため、モバイルチームはほぼ即座に超過に達します。

macOSのコストが潜む場所

  • コミットごとに実行される長いXcode buildとシミュレータの起動。
  • 複数のOSバージョンにまたがるmatrixの各leg。それぞれがmacOSの割増料金で課金されます。
  • Linuxの再実行コストの10倍で再実行される不安定なシミュレータテスト。

macOS支出を最小化する

本当にmacOSを必要とするjobだけをmacOSで実行し - linting、ユニットテスト、Apple以外のbuildはLinuxに保ちましょう。積極的にcacheし、冗長なmatrixのlegを削減し、不安定なシミュレータテストを安定させることで、割増料金を二重に支払わないようにします。

より安価なAppleのCI

cacheと自己修復は、1分が最も高価な場所で最も重要になります。不安定なmacOSの再実行を回復させることは、Linuxの再実行を回復させる場合の10倍を節約するため、ウォームプールと自己修復を備えたプラットフォームはAppleのCIで最も早く効果を発揮します。

重要なポイント

  • macOS runnerはLinuxの1分のおよそ10倍のコストがかかります。
  • Appleのライセンスが実際のAppleハードウェアを強制し、割増料金を生みます。
  • macOSはLinuxより約10倍速く無料枠を消費します。

関連ガイド