比較
CI/CDツールとプラットフォームの比較
GitHub Actions、GitLab CI、CircleCI、Buildkiteは、いずれもビルドをしっかり実行します。違いは、SBOMと来歴をどこから得るかです。リポジトリから、追加したツールから、あるいはビルドを見ていたランナーからです。
更新日
このページの対象読者
CI/CDプラットフォームを選定中、あるいは現在のプラットフォームを見直している方で、検討項目に新しい問いが加わった方が対象です。顧客、監査人、あるいはEUのCyber Resilience Actが、各リリースに何が含まれたかを尋ねてきます。ここで紹介するどのプラットフォームもビルドは実行できます。違いは、そのエビデンスをどこから得るか、そしてどれだけを自分で組み立てる必要があるかです。
CRACIがこのページにあるのはそのためであり、CRACIはCIプラットフォームではありません。GitHub Actions向けのランナーです。GitHub Actionsはそのままで、runs-onをcraciに変更するだけです。CRACIは現在GitHub Actionsのみに対応しており、GitLab CIとJenkinsはロードマップに掲載されています。GitLab CI、CircleCI、BuildkiteのパイプラインはCRACIでは実行できません。CRACIは当社の製品であることを踏まえてお読みください。他の製品は各社のドキュメントに基づいて説明しています。
SBOMはどこから得るべきか
プラットフォームがSBOMを得られる場所は3つあります。
- リポジトリ。プラットフォームがマニフェストとロックファイルを解析します。GitHubの依存関係グラフやGitLabのSBOMベースの依存関係スキャンはこの方式です。常に有効で実行コストも低く、プロジェクトが宣言している内容を記述します。インストールスクリプト、ダウンロードされるツールチェーン、キャッシュから復元されたパッケージは見えず、GitHubのエクスポートは固定されたコミットではなくデフォルトブランチを反映します。
- パイプラインに追加するツール。CircleCIのorbやBuildkiteのエージェント上で、SBOM生成ツールをステップとして実行します。柔軟ですが、結果はツールとその設定に左右されます。生成ツールはそれぞれ異なるファイル群を読み取り、異なる方法で解決するため、同じクリーンなチェックアウトに2つのツールを向けても、同じコンポーネント一覧は得られません。CRACIはディレクトリをスキャンするのではなくビルドを記録するため、その条件では比較できません。
- ビルドを見ていたランナー。SBOMは、ジョブが実行中に発生させた通信から記録されます。これがCRACIの方式です。
来歴も同じように分かれます。ワークフローに追加するステップであるGitHubのアーティファクト構成証明は、SLSA v1.0のBuild Level 2、再利用可能なワークフローを使えばLevel 3を提供します。GitLab Runnerは全プランでSLSA 1.0の来歴ステートメントを生成できます。Buildkite Package Registriesは、Enterpriseプランで、Buildkite自身がBuild Level 1を満たすとするSLSAの来歴を公開できます。CRACIのAPIは、ジョブを観測したランナーからの来歴データを返します。署名はなく、SLSAレベルもありません。
一覧で比較
GitHub Actionsの列には、チームがあわせて使うGitHubプラットフォームの機能(依存関係グラフ、Dependabot、アーティファクト構成証明、GitHub Advanced Security)を含めています。価格は2026年9月時点のものです。
| 機能 | CRACI | GitHub Actions | GitLab CI | CircleCI | Buildkite |
|---|---|---|---|---|---|
| 製品の概要 | GitHub Actions向けのランナー | GitHubに組み込まれたCI/CD | GitLabプラットフォームのCI/CD | ホスト型CI/CD | 自社でホストするエージェントを使うハイブリッドCI |
| ソース管理 | GitHub | GitHub | GitLab | GitHub、GitLab、Bitbucket | GitHub、GitLab、Bitbucketほか |
| ビルドから記録される依存関係 | 観測した取得通信、キャッシュも含む | Maven、Gradle、Pythonのビルドデータ | ロックファイルを読み取り | ||
| SBOMのエクスポート | ジョブごとにCycloneDX、SPDX | リポジトリの依存関係グラフのSPDX | CycloneDXレポート | 追加するorb経由 | エージェント上のツール |
| ビルドの来歴 | APIで来歴データを取得。署名なし | SLSA Build L2またはL3 | SLSA 1.0ステートメント | 記載なし | SLSA L1、Enterprise |
| ビルドのエグレスポリシー | ジョブごと、フェイルクローズ | Azureネットワーク、大型ランナー | 自社ランナーで自社管理 | 許可リスト用のIPレンジ | 自社エージェントで自社管理 |
| 依存関係の脆弱性アラート | 監視対象のSBOM | Dependabot | Ultimate | orb経由 | 記載なし |
| SASTとシークレットスキャン | プライベートリポジトリは有料 | 全プランで基本機能 | orb経由 | 記載なし | |
| WindowsとmacOS | 現在はLinuxのみ | ホスト型はベータ | |||
| 自社マシンでの実行 | 顧客ホスト型ランナー、Enterprise | 基本モデル | |||
| コンプライアンスレポート | CycloneDXまたはSPDX形式のSBOM、APIによる記録。レポートのエクスポートはなし | セキュリティの概要 | Ultimate | 記載なし | 記載なし |
| 開始価格 | 2 vCPUで1分あたり$0.004、月額料金なし | プランに応じて2,000~50,000分 | Freeは400分、Premiumは1ユーザーあたり$29 | Freeは30,000クレジット、月額$15から | Freeプランあり、Proはアクティブユーザー1人あたり$30 |
- 対応
- 一部対応
- 非対応
- ロードマップに掲載
各プラットフォーム
CRACI:GitHub Actions向けのセキュアなランナー
CRACIが置き換えるのはランナーであり、GitHub Actionsではありません。CRACI GitHub Appをインストールしてruns-onを変更するだけで、実行結果は引き続きGitHubのUIに表示されます。各ジョブの実行中、パッケージを認識するプロキシが取得したものを記録し(CIキャッシュから復元されたパッケージも含む)、ジョブごと、キャッシュごとの完全性の状態付きでCycloneDXまたはSPDXのSBOMを生成します。エグレスポリシーはジョブ開始前に検証され、フェイルクローズで動作します。最適な用途:ソフトウェアを出荷し、各リリースのエビデンスを必要とするGitHub Actionsのチーム。注意点:現在はGitHub ActionsとLinuxのみに対応(GitLab CI、Jenkins、Windows、macOSはロードマップに掲載)しており、SASTやシークレットスキャンはありません。
GitHub Actions
GitHubに組み込まれたCI/CDで、ホスト型のLinux、Windows、macOSランナーと、自社マシン向けのセルフホストランナーを備えています。プランには月2,000~50,000分が含まれ、標準の2コアLinuxランナーは2026年9月時点で1分あたり$0.006です。周辺には依存関係グラフ、Dependabotのアラートとセキュリティアップデート、アーティファクト構成証明、有料のGitHub Secret ProtectionとGitHub Code Securityがあります。最適な用途:すでにGitHub上にあるコード。注意点:生成ツールを自分で追加しない限り、SBOMが記述するのはビルドではなくリポジトリです。
CRACIとGitHubホステッドランナーの比較、CRACIとGitHub Advanced Security
GitLab CI
ソース管理、マージリクエスト、計画、CI/CDを1つの製品にまとめた、包括的なDevSecOpsプラットフォームの一部です。基本的なSAST、シークレット検出、コンテナスキャンは全プランで利用でき、Ultimateでは依存関係スキャン、継続的な脆弱性スキャン、DAST、脆弱性レポートが加わります。ホスト型ランナーはx86-64とarm64のLinuxに対応し、WindowsとmacOSはベータです。2026年9月時点で、Freeには400コンピュート分が含まれ、Premiumは1ユーザーあたり月額$29(年間請求)です。最適な用途:ライフサイクル全体を1つのベンダーでまかないたい場合。注意点:依存関係の検出はロックファイルから行われ、署名付きのSLSA Level 3構成証明はGitLabが実験的機能として挙げています。
CircleCI
GitHub、GitLab、Bitbucketに接続できる、成熟した柔軟なホスト型CI/CDプラットフォームです。Docker、Linux、Arm、Windows、macOS、GPUのリソースクラスでジョブを実行でき、自社マシン向けのセルフホストランナーもあります。Dockerレイヤーキャッシュは全プランで利用でき、テスト分割はタイミングデータに基づいてテストスイートを並列のエグゼキューターに分散します。サプライチェーンに関するガイダンスは、コンテキストとOIDCによる認証情報の保護が中心です。2026年9月時点で、Freeプランには月30,000クレジットが含まれます。最適な用途:複数のプラットフォームが混在する環境や大規模なテストスイート。注意点:SBOMとスキャンは、組み込むorbやツールに依存します。
Buildkite
ハイブリッド型のプラットフォームです。BuildkiteのSaaSのコントロールプレーンがオーケストレーションを行い、ジョブを実行するエージェントは自社のインフラ上に置かれるため、ソースコードとシークレットは自社の環境にとどまります。ホスト型エージェントも利用でき、2026年9月時点でLinuxは1vCPU分あたり$0.004です。署名付きパイプラインにより、エージェントはアップロード後に改変されたジョブを拒否でき、Test Engineはフレーキーテストとテスト分割に対応します。最適な用途:自社のハードウェアやネットワークで実行する必要があるビルド。注意点:ビルドのセキュリティは自分で設計する必要があります。Buildkite自身のガイダンスでも、エージェントに厳格なネットワークエグレス制御を適用するよう求めています。
CRACIの位置付け
CRACIはGitHub Actionsへの追加であり、CIプラットフォームの代わりではありません。GitHubでよくある構成は、すべてのプルリクエストでGitHub Advanced SecurityとDependabotを使い、CRACIを各ビルドを記録してエグレスポリシーを適用するランナーとして使う形です。監視対象のSBOMは新たな脆弱性が現れるたびに再評価され、脆弱性を含めてCycloneDXまたはSPDXでエクスポートできます。CRACIは、企業がより広範なCyber Resilience Actのコンプライアンスプロセスに必要とするソフトウェアサプライチェーンの可視性とエビデンスのかなりの部分を自動化します。
パイプラインがGitLab CI、CircleCI、Buildkite上にある場合、CRACIを使うにはそれらのパイプラインをGitHub Actionsに移行する必要があります。GitLab CIとJenkinsはロードマップに掲載されています。次のような場合、CRACIは適していません。
- コード、計画、CI、スキャンを1つのプラットフォームにまとめたい場合。GitLabはそのために作られています。
- ビルドを自社のハードウェアやネットワークで実行する必要がある場合。Buildkiteやセルフホストランナーが適しています。CRACIは現在マネージド型のみで、顧客ホスト型ランナーはEnterprise向けにロードマップに掲載されています。
- Windows、macOS、GPUでのビルドが必要な場合。CRACIは現在Linuxのみに対応しており、WindowsとmacOSはロードマップに掲載されています。
- 現時点で文書化されたSLSAレベルが必要な場合。GitHubのアーティファクト構成証明がそれを提供します。
CRACIと各ツールの比較
- CRACI vs GitHubホステッドランナー 同じワークフローで、より速いビルドとより低いコスト。
- CRACI vs GitLab CI DevSecOpsプラットフォームのスキャナーか、記録するランナーか。
- CRACI vs CircleCI ホスト型CIか、ビルド時のエビデンスか。
- CRACI vs Buildkite セルフホストのエージェントか、ビルドを記録するランナーか。
- CRACI vs Blacksmith 高速なランナーか、サプライチェーンセキュリティを組み込んだCIか。
- CRACI vs Depot ビルドの高速化か、ビルドのエビデンスか。
- CRACI vs Namespace 高速なCIインフラか、ビルドを記録するランナーか。
- CRACI vs WarpBuild 高速なランナーとBYOCか、エビデンスを残すランナーか。
- CRACI vs RunsOn 自社のAWSアカウント内のランナーか、ビルドを記録するランナーか。
- CRACI vs Ubicloud 低コストのランナーか、サプライチェーンセキュリティを組み込んだCIか。
- CRACI vs Avrea CIのオブザーバビリティか、ビルド時のエビデンスか。
- CRACI vs Harness パイプラインでのSBOMスキャンか、ビルドを記録するランナーか。
- CRACI vs Northflank ビルド・デプロイのプラットフォームか、ビルドを記録するランナーか。
- CRACI vs Jenkins 自社で運用するCIサーバーか、ビルドを記録するマネージドランナーか。
- CRACI vs Azure Pipelines 並列ジョブ課金か、ビルドのエビデンスを残す分単位課金のランナーか。
並べて比較
1つの製品ではなくカテゴリーを選ぶときのために、複数のツールを1ページにまとめています。