CloudflareがCI/CDをワークフローに変える:保存、ビルド、テスト、デプロイ — すべて自社プラットフォームで
Cloudflareの新しいCI SDKを使えば、CI/CDパイプラインをTypeScriptのWorkflowsとして定義可能。サンドボックス化されたステップ、依存関係キャッシュ、Artifactsからの直接イベントトリガーを備え、YAML疲れやキュー配管はもう不要。

Cloudflareは開発者プラットフォームを統合し、コードライフサイクル全体をカバーしようとしている:保存、ビルド、テスト、デプロイ。最新のピースは、Cloudflare WorkflowsとSandbox SDK上に構築されたCI SDKで、CIパイプラインをYAMLではなくTypeScriptのWorkflowとして定義できる。
SDKは@cloudflare/ciとして利用可能で、CIWorkflowクラスとci.runner()メソッドを提供する。パイプラインの各ステップ(install、lint、test、typecheck、build、deploy)は、それぞれ独立したサンドボックスで実行され、Workflowsからリトライとタイムアウトを継承する。R2に保存されたサンドボックススナップショットを介して依存関係をキャッシュできるため、installステップは一度だけ実行され、後続のステップでそれを再利用できる。
CI実行のトリガーはよりシンプルになった。イベントサブスクリプション、キュー、コンシューマー、ハンドラーを配線する代わりに、wrangler設定にeventsフィールドを追加する。artifact pushイベントをWorkflowに向けるだけで、ArtifactsリポジトリへのプッシュのたびにWorkflowインスタンスが生成され、Workflowsダッシュボードでステップごとに確認できる。
この提案はプラットフォームを対象としている:Artifactsに数百万のリポジトリを保存している企業は、1つのCI/CDパイプラインを書いて、すべての顧客のアプリで実行できる一方、個々の顧客がカスタムCI用に独自のWorkflowを定義することも可能。両者は同じ名前空間で共存できる。
Cloudflareはまた、AIエージェントがビルド失敗をレビューし、修正し、承認用にコミットをプッシュする自己修復の例も強調している — すべてCI Workflow内からオーケストレーションされる。
CI/CDパイプラインは単なるWorkflowです。YAMLの代わりに、TypeScriptでCI/CDパイプラインを定義でき、より高度なカスタマイズと設定が可能です。
| 側面 | Cloudflare CI | 従来のCI/CD |
|---|---|---|
| 定義 | TypeScript Workflow | YAML |
| 分離 | ステップごとのサンドボックス | ジョブごとのコンテナ |
| キャッシュ | R2スナップショット | キャッシュディレクトリ |
| トリガー | Artifact pushイベント | Webhook、スケジュール |
| 可観測性 | Workflowsダッシュボード | CIプロバイダーUI |