GitHubのWebHookを試してみる
GitHubのWebHookを試してみる。
準備
適当なサーバに、
GitHubのWebhookのJSONデータを受け取って
ログに出力するだけのPHPを設置しておく。
server$ vi index.php
<?php $json = file_get_contents('php://input'); $params = json_decode($json, true); error_log(print_r($params, true), 3, 'error.log');
Webhookの作成
リポジトリの設定画面でwebhookを追加する。
Payload URLには、適当なサーバに設置したPHPのURLを指定する。

Content typeに「application/x-www-form-urlencoded」を指定すると、$_POSTで受け取れる。
Secretを設定すると、ヘッダーに署名がついてくるみたいだが、よく分かっていないので、今回は省略。
プッシュしてみる
適当に編集してプッシュしてみる。
$ vi README.md $ git commit -am '適当に編集' $ git push
確認
ログを確認すると、下記のようなログが出力されているのが確認できる。
Array
(
[ref] => refs/heads/master
[after] => ・・・
[before] => ・・・
[created] =>
[deleted] =>
[forced] =>
[compare] => https://github.com/yk5656/sample/compare/・・・
[commits] => Array
・・・
)
[head_commit] => Array
(
・・・
)
[repository] => Array
(
・・・
)
[pusher] => Array
(
[name] => yk5656
[email] => ・・・
)
)