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] => ・・・ ) )