CI/CDサービスのmacOSインスタンスのスペック比較(追記あり)
はじめに
昨今はだいたいのCI/CDサービスは従量課金制のため、ビルド時間は重要です。
そして、ビルド時間は利用するインスタンスのスペックが大きな影響を与えます。
というわけで、執筆時点(2023/03/25)でCI/CDサービス3社(GitHub Actions、CircleCI、Bitrise)のスペックと料金についてかんたんに調べてみました。
各CI/CDサービスによるmacOSのスペック
GitHub Actions
macOS 仮想マシンのハードウェア仕様
3 コア CPU (x86_64)
14 GB の RAM
14 GB の SSD 領域
追記
2023年3月に新しいインスタンス(12コア)が追加されました。
macOS 12コア $0.32/分
現状、GitHub ActionsではApple M1 siliconはサポートしていません。
次のroadmapを見ると現時点でのサポート予定が「Q4 2023 – Oct-Dec」となっています。
CircleCI
medium(2023/10/2 - deprecated)
vCPU 4 @ 2.7 GHz
RAM 8 GB
macos.x86.medium.gen2
vCPU 4 @ 3.2 GHz
RAM 8 GB
large(2023/10/2 - deprecated)
vCPU 8 @ 2.7 GHz
RAM 16 GB
Scale Planで提供されているのは次のマシン
こちらはm1マシンが一応あるようですね。
macos.x86.metal.gen1:1 分あたり 100 クレジット (24 時間〜)
vCPU 12 @ 3.2 GHz
RAM 32 GB
macos.m1.large.gen1
vCPU 8
RAM 12GB
Bitrise
Apple Silicon, M1 Mac mini
M1 Medium:2 credits/min
4 CPU @3.2GHz
6 GB RAM
M1 Large:4 credits/min
8 CPU @3.2GHz
12 GB RAM
Velocity Planで提供されているのは次のマシン(M1 Max Mac Studio)
M1 Max Medium:6 credits/min
5 CPU @3.2GHz
27 GB RAM
M1 Max Large:8 credits/min
10 CPU @3.2GHz
54 GB RAM
料金とスペックの関係
GitHub Actions
ビルドマシンとしては次の一択。
3 コア CPU (x86_64)
14 GB の RAM
14 GB の SSD 領域
料金
プランに含まれているクレジットはありますが、下記ページにある料金を用います。
macOS $0.08/分
追記
上述したとおり、コア数が今まで3コアだけだったのが12コアのが用意されました。
しかし、4倍になったコア数ですが値段も4倍になっています。
コア数が4倍になったといってもビルドにかかる時間が1/4になるというわけではないので、分単位の料金は特に安くなるわけではないと思います。
CirCleCI
ビルドマシンとしては次を選択したとします。
macos.x86.medium.gen2:75 credits/min
vCPU 4 @ 3.2 GHz
RAM 8 GB
料金(Perfomanceプランの場合)
30,000クレジット/月、$15.00/month
macOS $0.0375/分
Bitrise
ビルドマシンとしては次を選択したとします。
M1 Medium:2 credits/min
4 CPU @3.2GHz
6 GB RAM
料金(Teamsプランの場合(1年払い))
$31.50/month、500クレジット / month
macOS $0.126/分
まとめ
料金とスペックを比較した結果
料金のところで書いたプランで、1分単位の料金を見ると値段順は次のとおりです。
CircleCI:$0.0375
GitHub Actions:$0.08
Bitrise:$0.126
一方、スペックを考えるとBitriseだけApple siliconで、CircleCIはとGitHub Actionsは異なります。
従って、似たようなスペックに見えてもiOSのビルドにおいてはビルド時間が長くなります。
ビルドするアプリによりますが、約1.5〜2倍近くかかる可能性があります。
そのため、ビルド時間まで考慮した上での料金を考えると、次になると思われます。
CircleCI:$0.0375 -> 約0.056 -> 約0.075
Bitrise:$0.126
GitHub Actions:$0.08 -> 約$0.12 - $0.16
[注意点]
ただ、利用したい機能や利用するメンバー数、そしてビルド頻度に応じて利用するプランを変更する必要がでてきます。
その場合は、必ずしも上の料金のままとは限りません。
[注意点2]
m1マシンなどのサポートやビルドマシンのスペック変更は定期的におこなわれているので、チェックしておく必要があります。
最近(2023/06)のCircleCIからのアナウンスは次
おわりに
CI/CDサービスを選択する際に気にすることとしては「自分たちのプロダクトに合うかどうか」「利用できるマシンのスペック」「料金」「利用できる機能」「他のプロダクトで利用しているものと同一にするか否か」「Xcodeのサポート速度」など考えるべき視点は色々とあります。
今回は、スペック比較が見当たらなかったので、軽く調べてまとめてみましたが、CI/CDサービスを選択する際は自社または自プロジェクトにおいて必要な観点をもとに選択するのが良いです。
なおSelf-hostedという自前でマシンを活用するというのも今の時代は逆に1つの手としてありだと思っています。