見出し画像

ネイティブアプリに対応した CI サービスの料金を比較しました

こんにちは。Zaim の高山です。

Zaim では CI/CD サービスとして Bitrise を活用しています。今後 Bitrise の料金設計が変更になるということで、チラホラ話題になっていますね。しばらくは現状維持のまま利用できそうですが、Zaim でも変更後の新しいプランはどれを選ぶべきか、来たるべき時に備えて検討をはじめています。

さて、Zaim で Bitrise を使い始めてからはや数年。いくつかの老舗のサービスはネイティブアプリに対応したり、新しいサービスが登場したりと状況が変わってきています。折角の機会なので、他にいいサービスがないかを、主に料金面から比較をしたのでまとめました。

条件としては、macOS と Linux の VM が使えることです。大まかな傾向が把握できればいいので、条件設定についてはあえて簡略化して比較しています。

Bitrise

ネイティブアプリの対応に特化していたところと、個人的には見た目が好きだったこともあって長い間、利用していました。Bitrise のサイトには、Zaim が Bitrise の利用を始めた頃のストーリーが掲載されています。とても懐かしいですね。

料金

基本は従量課金なのですが、なかなかややこしいです。

  • 自分たちが使いたい「クレジット」の上限を決める(ここで料金が決まる)

  • ビルドするマシンごとに、1 分間のクレジット消費数が決まっている

というのが基本です。例えば macOS 2vCPU @ 2.7 GHz, 4 GB RAM という構成だと 1 分間で 2 クレジット消費します。

クレジットごとの料金設定は以下の通りです。

これらの表を元にして、自社に適切な Tier を選びます。例えば iOS/Android それぞれ macOS Standard で一回の CI 実行時間が 15 分だとして、それぞれ 1 日 10 回の実行で 20 営業日と想定した場合は 15x10x20x2=6,000 分/月です。そして macOS Standard だとクレジットとしては x2 して 12,000 クレジットが必要なので Tier9 の 725 ドル/月というプランを選択しましょうということになります。なかなか複雑ですね!

無料の Hobby プランの場合は、macOS Standard だと150 分/月まで使えます。あまり利用頻度が多くなければ良いかもしれません。

Codemagic

Flutter 専門の CI/CD として始まったサービスです。そのため、ネイティブアプリの対応も良さそうで、iOS のコードサインについてもドキュメントに記載があるなど親和性が高いです。

料金

Codemagic の料金表

無料プランだと 500 分/月で、従量課金は使った時間と開発者の人数で料金が決まります。プロフェッショナルだと 299 ドル/月で無制限とかなり魅力的な設定です。

昨今の事情を見ていると、プロフェッショナルプランも数年後には改訂される可能性は高そうだとは思っていますが、現状だとかなり有力な選択肢だと感じます。

CircleCI

老舗の CI サービスです。最近、無料枠がたくさん増えました。

料金

CircleCI の料金表

CircleCI も Bitrise と同じようなクレジットベースの課金システムです。無料の場合は月に 30,000 クレジット、Performance プランだと月に 55,000 クレジット付属します。Performance プランは開発者 5 名まで最初の料金に含まれており、以降 1 名を追加する毎に 15 ドルです。そして、追加の 25,000 クレジット毎に 15 ドルが発生する、という具合に文章だけだとなかなかややこしいですね。

macOS Medium 構成だと、4 CPU @ 2.7 GHZ 8 GB RAM で 1 分間に 50 クレジット消費します。つまり iOS/Android それぞれ macOS Medium で一回の CI 実行時間が 15 分だとして、それぞれ 1 日 10 回実行で 20 営業日と想定した場合は……15x10x20x2x50で月に 300,000 クレジットが必要という結果になりました。

追加クレジットの購入に 25,000*10=150 かかるので、開発者 5 人の場合は最終的に 165 ドルという結果です。

VM ごとに設定されているクレジットは、以下に記載されています。

ちなみに同じ macOS Medium の構成だと、無料プランの場合は月に 600 分まで使えます。個人利用なら結構いけそうですね。

GitHub Actions

GitHub Actions にも macOS の VM が用意されています。

料金

GitHub の料金表

無料利用枠は、GitHub のプランに含まれています。注意しないといけないことは、たとえば Team プランの無料枠として書いてある 3,000 分はそのまま 3,000 分まるっと使えるわけではないことです。macOS の場合は 1 0倍の倍率がかかります(以下ページ内の「分の倍率」という項目に説明があります)。つまり Team プランで macOS だけを使った場合は月に利用できる無料枠は 300 分です。

無料分を超過すると、超過分は 1 分あたり利用料金が発生します。

例えば iOS/Android それぞれ macOS で一回の CI 実行時間が 15 分だとして、それぞれ 1 日 10 回の実行で 20 営業日と想定した場合は 15x10x20x2=6,000 分/月です。Teams の無料枠として 300 を引いて残りの 5,700*0.08 ドルを計算すると、CI だけの費用としては 456 ドルが必要という結果になりました。

まとめ

最初に料金の比較をしようと思った時には、各社のサービスのプランがややこしすぎるように見えたので、まずは大まか傾向を把握するべく同一の条件で計算をしてみました。マシンパワーは各社で異なるでしょうから、実行時間などで差は出てくるかと思いますが、公表されているデータを使いながら比較するための一助になるのではないでしょうか。

Zaim ではこうした環境の改善も含めて積極的にブラッシュアップをしています。今後どんな CI を使っていくのか?興味があるかたは、話だけでもいいのでお声がけください。


この記事が気に入ったらサポートをしてみませんか?