Git Webhook 〜リクエストの中身一覧〜

イントロダクション

Githubにコミット(PUSH)したときなどにWebhookを使用してGithubからリクエストを飛ばすことができます。

このWebhookを使用してたシステム(アプリケーション)との連携を行うことができます。

これを受信して処理を行うのに自分はPHPを使用しました。PHPで受信したリクエストの中身をメモがてらに記載します。

Githookから送られるデータ

前提として以下のコードでGitからの送信されたデータ(JSON)を取得します。

 $json_string = file_get_contents('php://input');
 $json = json_decode($json_string,true);

取得したデータをvar_dumpできれば良いのですが、ブラウザで開くリクエストではないのでファイル出力して確認しました。重要であろう部分を抜粋しました。

// JSONからキーを指定して取得
キー: head_commit / 中身: Array
// 中身を取り出しました。
 中身のキー: distinct /値: 1
 中身のキー: message /値: テスト27(コミットコメント)
 中身のキー: timestamp /値: 2019-06-09T18:07:35+09:00
 中身のキー: url /値: https://github.com/ZenryokuService/GoalAchievement/commit/74adcfaf088fd0cf2955cea0769b369d2f76f156
キー: repository / Value: Array
 中身のキー: name / ArrayValue: GoalAchievement
 中身のキー: full_name / ArrayValue: ZenryokuService/GoalAchievement
 中身のキー: html_url / ArrayValue: https://github.com/ZenryokuService/GoalAchievement
 中身のキー: description / ArrayValue: 目標を達成するためのフローを作り上げる、Javaでテスト用のプログラムを作成。

しかし、シークレットキーなどがみつかりませんでした。。。まぁ当然か(笑)

投稿者:

takunoji

音響、イベント会場設営業界からIT業界へ転身。現在はJava屋としてサラリーマンをやっている。自称ガテン系プログラマー(笑) Javaプログラミングを布教したい、ラスパイとJavaの相性が良いことに気が付く。 Spring framework, Struts, Seaser, Hibernate, Playframework, JavaEE6, JavaEE7などの現場経験あり。 SQL, VBA, PL/SQL, コマンドプロント, Shellなどもやります。

コメントを残す