CircleCI と GitHub Actions のどちらを使うか

注意

2021/09/25 時点での状況に基づいています。

結論

  • GitHub Actions を選んでおけばまず問題ない
  • 業務で課金前提なら CircleCI もあり
  • プライベートリポジトリの利用形態によっては CircleCI もあり

前提

前提として、CircleCI と GitHub Actions での無料利用時間の上限は以下のとおりです。

無料利用時間上限

  • GitHub Actions
    • パブリックリポジトリでは上限なし
    • プライベートリポジトリでは月2,000分または月3,000分
      • 単位は ユーザ ã‚„ Organization *1
  • CircleCI
    • パブリックやプライベートの関係はなく、一週間につき 250分
      • ただし以下の設定項目がリポジトリごとにあります

gyazo.com

結論に至った理由

上記の前提から、業務の場合には CircleCI で課金する方を選ぶということは考えられると思います。以下のような理由からです。

  • GitHub Actions 以前から使っていた
  • CircleCI 用の知見や資産がある
  • 移行のコストがまだ見合わない
    • 分散するとメンテコストがかかる

一方で、個人の場合には GitHub Actions で良いと思います。それは以下の理由からです。

  • 個人で 2,000分(または 3,000分)を使い切ることはまずない
    • 「cron で長時間のジョブを1時間ごとに実行する」などが無い限りは使い切れないでしょう
  • プライベートリポジトリは少ない(これは人によりますが……)
  • 取り巻く状況を考えると、GitHub Actions に馴染んでおくことは将来的にもきっと役に立つ

補足

あくまで一般的な話です。このあたりの技術選定は様々な条件が関係してくると思いますので、条件を見極めつつ将来的なことも考えた選定が重要になるかと思います。

CI はあくまで手段なので、そこには注意したほうがいいと思います。

*1:リポジトリごとではない