Jenkinsのビルド結果をBitbucketに表示する方法(成功・失敗のステータス連携)
背景
Bitbucket 上の コミット画面 や プルリクエスト画面 に Jenkins のビルド結果(✅成功/❌失敗)を表示させたい
Bitbucketがクラウドの場合
🔧 必要なプラグイン
🔧 設定手順
1. プラグインのインストール(まだの場合)
「Jenkins管理 → プラグインの管理 → 利用可能」タブで
Bitbucket Build Status Notifier
を検索してインストール
2. ジョブにステータス通知を設定
パイプラインジョブの場合は、Jenkinsfile
に以下を追加します:
pipeline {
agent any
stages {
stage('Build') {
steps {
// 実際のビルド処理
sh 'echo building...'
}
}
}
post {
success {
bitbucketStatusNotify(
buildState: 'SUCCESSFUL',
buildKey: "jenkins-${env.JOB_NAME}-${env.BUILD_NUMBER}",
buildName: "My Pipeline: ${env.JOB_NAME}"
)
}
failure {
bitbucketStatusNotify(
buildState: 'FAILED',
buildKey: "jenkins-${env.JOB_NAME}-${env.BUILD_NUMBER}",
buildName: "My Pipeline: ${env.JOB_NAME}"
)
}
}
}
3. bitbucketStatusNotify
のパラメータ解説
パラメータ | 内容 |
---|---|
buildState |
INPROGRESS , SUCCESSFUL , FAILED
|
buildKey |
Jenkinsでの識別用キー(任意) |
buildName |
Bitbucket上での表示名(任意) |
4. Bitbucket での表示例
- ✅
Build successful (MyJob)
- ❌
Build failed (MyJob)
表示場所:
- コミット画面
- プルリクエスト画面(チェックマークや×が表示されます)
Bitbucketがオンプレの場合
最初クラウドの方法で行ったが、実はオンプレのBitbucketでした
🔧 必要なプラグイン
- Bitbucket Server Integration Plugin
🔧 設定手順
1. プラグインのインストール(まだの場合)
「Jenkins管理 → プラグインの管理 → 利用可能」タブで
Bitbucket Server Integration Plugin
を検索してインストール
2. Bitbucket Serverで Personal Access Token を発行
発行手順
2.1. Bitbucketにログイン(https://git.example.com/)
2.2. 画面右上のアイコン → 「Personal Settings(個人設定)」をクリック
2.3. 左メニューから「Access Tokens(アクセストークン)」を選択
2.4. 「Create Token」をクリック
2.5. 以下の通り設定:
- Label:Jenkins通知用(任意)
- 権限:
- Repositories:Read ✅ / Write ✅
- Pull Requests:Read ✅ / Write ✅
2.6. 表示されたトークンをコピーしてください(再表示できないため)
3.Jenkinsに Bitbucket Server を登録
3.1. 「Jenkinsの管理」→「設定(Configure System)」
3.2. セクション「Bitbucket Servers」が追加されているので、開きます
設定内容:
フィールド | 内容 |
---|---|
Server Name | 任意(例:My Bitbucket Server) |
Server URL | https://git.example.com/(BitbucketのベースURL) |
Credentials | Username + Personal Access Token をここで登録・選択 |
Connection Test | 必ず「Test Connection」で接続確認 |
4.ジョブを「Multibranch Pipeline」として作成
4.1. Jenkinsトップ画面 → 「新規ジョブ作成」
4.2. 名前を入力(例:my-multibranch-job)
4.3. ジョブタイプとして「Multibranch Pipeline」を選択 → OK
5.ソース設定:Bitbucket Serverを選択
フィールド | 内容 |
---|---|
Bitbucket Server | ③で登録したサーバ名を選択 |
Project Key | Bitbucketのプロジェクトキー(例:MYPROJ) |
Repository Slug | リポジトリ名(例:my-repo) |
Credentials | Gitクローン用の認証情報(必要に応じて) |
6.Jenkinsfileをリポジトリに配置(通常はルート)
Bitbucket側のリポジトリに Jenkinsfile を追加
7.保存&スキャン実行
「保存」後に Jenkins がリポジトリをスキャンし、
→ ブランチやPRごとに自動でジョブが作られます。
トラブルシューティング
問題 | 対応 |
---|---|
「Test Connection」でエラー | トークンの権限不足、URLミス、証明書エラーの可能性あり |
ブランチがスキャンされない | Jenkinsfileがそのブランチに存在しない可能性あり |
ビルドステータスが出ない | Jenkinsfileのエラー、SCM設定不足の可能性あり |