R note

Gatsby + Airtable + Netlifyサイトの更新トリガーはMacだったらAlfredのWorkflowが便利かも

GatsbyJS

Gatsby + Airtable + Netlifyを使って作っているこのサイトですが、Airtableでデータを更新しただけだと自動でサイトを更新してくれないのが悩みどころです。NetlifyのwebhookにPOSTリクエストを送ればできるんですが、Macだといい方法が思いつきませんでした。

先日、QracさんがAutomatorを使ったやり方を紹介されていて、似たような感じでAlfredのWorkflowでやったら便利かもと思ってやってみました。

AlfredのWorkflowは有料版しか使えないのがあれですけど。

AlfredのWorkflowの作り方

AlfredのWorkflowの「Run Script」を使ってMacターミナルのコマンドを実行します。これで、Alfredに「rnote」というキーワードを入力して実行するとNetlifyでデプロイを発火できます。

1. Workflowを新規作成する

Workflowタブの左下にある「+」アイコンからTemplates → Essentials → Keyword to Script to Notificationを選択して新規Workflowの作成を開始します。

Alfredの新規Workflow作成画面

Workflowの名前とアイコンを入れてSaveをクリックすると、以下の画面が出てきます。

Alfredの新規Workflow設定画面

ここからKeywordRun ScriptPost Notificationをクリックして一つ一つ設定していきます。

2. Keywordの設定

ここで設置したキーワードでWorkflowを呼び出せます。僕はrnoteにしました。

Alfred WorkflowのKeyword設定画面

3. Run Scriptの設定

NetlifyのBuild hooksで作ったフックのコマンドをコピーします。

Alfred WorkflowのRun Script設定画面

4. Post Notificationの設定

コマンドを送ったら通知が出るようにPost Notificationを設定します。

Alfred WorkflowのPost Notification設定画面

これで、Alfredでrnoteと入力して実行するだけで、Netlifyのデプロイができるようになりました!Alfredを多用する自分にとっては超便利!