Vercelで手動でデプロイをトリガーする方法

概要

Airtableの少量のデータを元にVercel上に構築されているNext.jsによるWebアプリに対し、非開発者によりAirtableのデータを更新し、それをデプロイされたWebアプリに反映してもらうため、Deploy Hooksデプロイフック)を使う方法を試しました。

  • 非開発者が使うパソコンはWindowsを想定しています。
  • ブログのように記事が追加されていくようなサイトではないため、ISR(Incremental Static Regeneration)は今回採用しないことにしました。

デプロイフックは、デプロイのトリガーやビルドステップの再実行のためにHTTP POSTリクエストを受け付けるURLです。今回はBATファイルからCurlコマンドを実行して呼び出します。

デプロイフックの作成

Gitに接続されたVercelのプロジェクトのSettingsGitDeploy Hooksにて、適当なデプロイフックの名称(例:”My Hook”)及びブランチ名”main”)を入力し、[Create Hook]ボタンをクリックしておこないます。

Deply Hooks
すると、https://api.vercel.com/v1/integrations/deploy/prj_*************************************** といった調子のURLが生成されます。

デプロイフックの呼び出し

ターミナルで次のように呼ぶだけです。

curl -X POST https://api.vercel.com/v1/integrations/deploy/prj_***************************************

Windowsでは、これを、例えばbuild.bat のような拡張子.batを持つファイルに書いておいて、ファイルをダブルクリックすることにより実行することができます。