GitHubの設定 ~GitHubからJenkinsへの通知~

GitHubからJenkinsへの通知は、GitHubのWebhooksという機能を利用して行います。WebhooksとはGitHubのリポジトリに変化があった際に任意のURLを叩いてくれる機能です。この機能を使うことでリポジトリにPUSHしたタイミングでJenkinsにその旨を通知することができるようになります。

Webhooksの設定方法

GitHubの設定を行うリポジトリのページに移動し、「Settings」 > 「Webhooks & Services」を選びます。「Services」欄の「Add Services」から「Jenkins (GitHub plugin)」を選択し設定画面へ遷移します。

webhooks

設定画面では、Jenkinsで作成したWebhooks用のジョブの実行URLを指定します。実行URLは以下の形式で指定します。ジョブの名前の後ろに「buildWithParameters」と必ず記載してください。

http://[Jenkinsの動作するドメイン]/job/[ジョブの名前]/buildWithParameters

setting

ジョブの実行

これで設定はすべて完了となります。設定が問題なく完了していれば、GitHubの特定ブランチにPUSHすることで自動的にジョブが起動し、最新ファイルの取得まで行われるはずです。

ジョブの実行後、Jenkinsの左メニューから「ビルド履歴」を選択し、実行したジョブの履歴を確認してみましょう。問題なく動作していれば以下のキャプチャ画像のように実行したジョブの左側に青い丸が表示されているはずです。赤い丸が表示されている場合はどこか設定が間違っている可能性がありますので、設定を見直してみましょう。

Jenkinsのビルド履歴

おわりに

Jenkinsのプラグインを使うことで、GitHubと連携し最新ファイルを取得する仕組みを簡単に構築することができたと思います。

ここまで環境が構築できれば、あとはコンテンツのビルドを行ったり、テスト処理を実行したりと、コンテンツにあわせて処理を追加していけば良いだけです。次回は「JenkinsでCI環境構築チュートリアル ~GitHubからWebサーバーへのデプロイ~」と題して、Jenkinsを使ってテストサーバにデプロイする手順をご紹介していきたいと思います。