GitHubのプルリクエストがマージされたら自動でリリースタグを設定するスクリプトを書いてみた

【自称】ラーメンエバンジェリストのネモティです。

業務でGitHubを使用しているんですが、プルリクエストでmasterブランチにマージされた後は毎回手動でリリースタグを設定していました。

しかし「毎回行なう操作なんだから自動化した方が良くね?」ということで、masterブランチにマージされたら自動でリリースタグを設定するスクリプトをGoogle Apps Script(以下GAS)で書いてみました。

「プルリクマージ→Webhook→GAS→GitHub API(Release)→リリースタグ設定」という流れになっています。

  1. GitHubのアクセストークンを取得する
    GitHub「Personal access tokens」の設定方法を参照。
  2. スクリプトをGASに設定する
  3. スクリプトをウェブアプリケーションとして公開する
    Google Apps Scriptを使って簡易APIをサクッと作るを参照。
  4. GitHubのリポジトリでWebhookを設定する
    リポジトリのSettings>Webhooks>add webhookから以下の様に設定する。
    Playload URLには3.で取得したウェブアプリケーションのURLを設定する。

WebhookとGAS、GitHub APIを使用するといろんなことが出来るので、これからもコードで出来るところはどんどん自動化していきます。