【Github】Github ~ Webhook 編 ~

■ はじめに

Github の Webhook (Webフック)について、触れる

Webhook でできること

例1)AWSサービス(CodeBuildなど)やCI/CDツール(Jenkinsなど)と
   連携して自動ビルド
例2)Slackなどと連携して通知

etc...

■ 設定手順

【1】Webhook画面に遷移

GitHubにおいて、対象のリポジトリに対して、
   [Settings]-[Webhooks]-[Add Webhook] を選択

【2】Webhook の設定

以下を設定する

2-a) Payload URL

* 通知を飛ばしたいURL を設定

2-b) Content type

*「application/json」or「application/x-www-form-urlencoded」を選択

2-c) Secret

* 任意のシークレットキー ※1を設定する

+ Which events would you like to trigger this webhook?(トリガーとなるイベント)
 =>「Just the push event.(pushイベント)」 or
      「Send me everything.(全てを送る)」 or
      「Let me select individual events.(イベントを選択)」を選択

※1
SHA1ハッシュをかけてリクエストヘッダに「X-Hub-Signature」のキーとして送信。
呼び出されるAPI側で送信元の照合をかけることができる

2-d) Active

* アクティブにするか
 => チェックを付ける

■ イベントについて

https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/sample-github-pull-request.html

より

* PUSH
* PULL_REQUEST_CREATED
* PULL_REQUEST_UPDATED
* PULL_REQUEST_REOPENED
* PULL_REQUEST_MERGED

参考文献

https://qiita.com/tz2i5i_ebinuma/items/528ea5163bb2df379852
https://www.blog.danishi.net/2019/05/22/post-1195/
https://dev.classmethod.jp/cloud/aws/codepipeline-s3-deploy-cfn-web/

関連記事

Github ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2019/07/18/234652
CodeBuild ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2020/01/21/221122
CodePipeline ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2020/01/23/231827