JenkinsとGitBucketを連携させる

前回はJenkinsとRocket.Chatを連携し、ジョブの実行結果をチャンネルに表示できるようにしました。今回はJenkinsとGitBucketを連携し、masterブランチにpushされたらジョブを実行するようにします。

まずはGitBucketにリポジトリを作成します。画面右上の “+” ボタンから “New repository” を選択し、”Create a new repository” 画面を埋めて “create repository” ボタンで作成できます。リポジトリができたら画面左側の “Settings” から設定画面を開き、”Service Hooks” タブを開いておきましょう。

次にJenkinsの設定です。「Jenkinsの管理」から「プラグインの管理」を選択し、「利用可能」タブから “GitBucket Plugin” を選択し、前回の “RocketChat Notifier Plugin” と同様にインストールします。

プラグインをインストールしたらJenkinsのトップページに戻り、プロジェクトの一覧から前回作成した “jenkins-rocketchat” を選択します。画面左側の「設定」を開くと、”GitBucket”欄が追加されていますので、ここに先ほど作成したリポジトリのURLを入力し、その下の “Enable hyperlink to the issue” にチェックを入れます。

続いて「ビルド・トリガ」欄の “Build when a change is pushed to GitBucket” にチェックを入れたら設定を保存します。

これだけではまだ不十分です。画面右上のユーザ名からユーザページを開き、左側の「設定」を選択します。「APIトークンの表示…」ボタンをクリックするとAPIトークンが表示されますので、これをコピーします。

ここでGitBucketに戻ります。”Service Hooks”タブの “Add webhook” ボタンを選択してフィールドを埋めます。

  • Payload URL: 今回の設定では http://jenkins:8080/gitbucket-webhook/
  • Content type: application/x-www-form-urlencodedのまま
  • Security Token: ここにAPIトークンをペーストします
  • Which events would you like to trigger this webhook?: 今回はPushにチェック

入力したら、”Payload URL” 欄右側の “Test Hook” ボタンをクリックして設定を確認します。問題なければ “WebHook Test” ダイアログが表示され、 “Response” タブに “200” と表示されます。

問題なければダイアログを閉じ、”Add webhook” ボタンでWebHookを追加します。これで設定は完了です。

冒頭に作成したリポジトリをローカルにcloneし、README.mdあたりを編集してgit commit, masterリポジトリにpushしてみて下さい。Jenkinsの “jenkins-rocketchat” ジョブがスケジューリング後に実行され、履歴が表示されます。また、Rocket.Chatのjenkinsチャンネルにビルドの開始・終了が通知されていることと思います。

“JenkinsとGitBucketを連携させる” への1件の返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です