サーバレスのサムネイル

サーバレス

Cloudflare PagesのDeployフックの仕様と使い方まとめ

公開日: 2021.8.19

新しく登場したCloudflare PagesのDeployフック。その仕様や具体的な使い方についてまとめました。

編集ノート: SERVERSUSでは、パートナーリンクからコミッションを得ています。コミッションが記事の意見や、サービスの評価に影響を与えることはありません。

これまでのCloudflare Pagesのデプロイ

これまで、Cloudflare Pagesでビルド&デプロイするには、

  1. GithubレポジトリへのPush
  2. Cloudflare Pagesの管理ページから手動

の二つがありました。

基本的にこの二つの機能があれば、Cloudflare Pagesにサイトをデプロイするのに問題ないのですが、ヘッドレスCMSを使っている場合や、プログラムと連携させてデプロイしたい場合には、手動しか方法がなかったため、高度な使い方には制限がありました。

Cloudflare PagesのDeployフックの仕様

今回、Deployフック機能が追加されたことで、ヘッドレスCMSなどのサードパーティサービスや、オリジナルプログラムと組み合わせてDeployが出来るようになります。

Cloudflare PagesのDeployフックは、Cloudflare APIにPOSTリクエストを送る形になります。正しいパラメータでPOSTを送ると、ビルド&デプロイが開始されるという仕組みです。

POST方式なので、プログラムの言語やフレームワークに限定されることなく、様々な使い方ができます。

また、デプロイフックは複数作成可能なので、テストブランチ用やステージング用など使い分けをすると良いでしょう。

デプロイフック自体に回数制限はありませんが、Cloudflare Pages自体が一ヶ月に500回までのデプロイ制限があるので、あまり使いすぎないように注意しましょう。

Cloudflare PagesのDeployフック使い方

まずはCloudflareのサイトで、デプロイフックの設定をします。

  1. Pagesから対象のサイトに入る
  2. ページ上にあるタブメニューから「設定」に入る
  3. ページ左のメニューから「ビルド & デプロイ」に入る
  4. 「デプロイ フック」ブロックで設定を追加する
  5. APIのURLをコピーする

簡単ですね。

コピーしたURLは、

https://api.cloudflare.com/client/v4/pages/webhooks/deploy_hooks/乱数

というフォーマットになっています。「乱数」の部分がユニークな識別子になります。

このURLをプログラムなどからPOSTすれば、ビルド&デプロイが開始されます。試しに、curlでPOSTしてみましょう。

curl -X POST "https://api.cloudflare.com/client/v4/pages/webhooks/deploy_hooks/乱数"

下記のような値がかえってきて、successがtrueなら、デプロイが開始されているはずです。

 {
  "result": {
    "id": "乱数"
  },
  "success": true,
  "errors": [],
  "messages": []
}

POSTするだけなので、WordPressに組み込んだり、自前のプログラムと連携も簡単です。


Cloudflare PagesのDeployフックの仕様と使い方を見て来ました。

シンプルですが、プログラムなどと組み合わせることでCloudflare Pagesがもっと使いやすくなるので、ぜひ試してみてください。


価格は記載がある場合を除き、すべて税込みです。

関連キーワード

サーバレスの新着記事