概要

Google Apps Scriptを用いて、Googleスプレッドシートが更新された際、GitHubに通知を送る方法を調べました。合わせて、StrapiやContentfulからGitHubに通知を送る方法も調べたので、備忘録として記録します。

Google Apps Script

以下のようなスクリプトを用意することで、スプレッドシートの更新をGitHubに通知できました。

ccccf}oooounnnnnc}v}v}Usssscoa)a;rtttttn"""re;rmhplisAACveeaFtoreotcuopertayeowevnctnanehdltknpehehtytqoeoceeonpepoel_udrahnrtoatrnote:sdA=_sd"itays,,p==tte:z-dpt'p"ySraTeOP.""zphs"ty=pOfgyzeeaiptSehyze=poeJiTtpy"=tpn"So'c_"C{l":On,hx"hi:Ns(xaac".`xana`as=h"agtBptt"eiepr{t(oalip)nrins/ecg:{vrai/ntf/d$iya.{o(pgtn{iio/.tkjghesiunotb}nh+`"uj,bs.ocno"m,/repos/${owner}/${repo}/dispatches`,requestOptions)

トリガーの設定方法などは以下の記事が参考になりました。

https://businesschatmaster.com/slack/spreadsheet-change-notification

なお、Googleスプレッドシートの更新の都度、GitHubへの通知が行くので、GitHub Actionsのほうで、以下のようなconcurrencyを設定しておくほうがよさそうです。

または、トリガーを特定のセル(列)が更新された時だけ、などにすることも考えられます。

ncojaonrobmnc:ebuecaptsirs:unoy:lutrcsp-dne-Breie:spueltsu-snuin-o:po:aslcirdnmedynya:es:-_t::Tpdeueri_bcasoscuhctgponetrantciettukosce-onshnlus::tat/tctehrseutcekout@v3

Strapi

Strapiのwebhookでは、bodyをカスタマイズできないため、以下のようなプロキシサーバを立てる必要があるようです。

https://github.com/badsyntax/strapi-webhook-actions-proxy

Contentful

Contentfulでwebhookを使用する方法はシンプルでした。以下の記事などが参考になりました。

https://qiita.com/akitkat/items/3adcbafc4eeabaa6470b

まとめ

Headless CMSでのwebhookの利用において参考になりましたら幸いです。