こんにちは!開発現場の裏側で、日々コードとパイプラインの海を泳いでいる先輩エンジニアです。
突然ですが、あなたのチームのJenkins、こんな見た目になっていませんか?
- 「どこが失敗したのか、赤い文字の長大なログをスクロールして探し当てている」
- 「今、どのステージが実行中で、どこで詰まっているのかパッと見で分からない」
- 「新しくチームに加わったメンバーが、Jenkinsの画面を見た瞬間に絶望の表情を浮かべる」
……心当たり、ありますよね。
古いJenkinsのUI(クラシックUI)は、確かに歴史的で高機能ですが、現代のスピード感ある開発において「可視化」の観点では少し息苦しいと言わざるを得ません。
今回は、そんな古いJenkinsの呪縛からあなたとチームを解放し、毎日のデプロイメントをワクワクするものに変える魔法のプラグイン「Blue Ocean」について徹底解説します。
これをマスターすれば、毎日の作業が劇的に楽になりますよ。さあ、一緒にモダンなCI/CDの世界へ扉を開きましょう!
—
1. そもそも「Blue Ocean」とは何か?
Blue Oceanは、一言で言うと「Jenkinsを現代のモダンなCI/CDツール(GitHub ActionsやGitLab CIなど)並みに美しく、直感的にするUIプロジェクト」です。
従来のJenkins UIは「サーバー管理者のためのツール」という側面が強く、ログや設定項目がテキストベースで羅列されていました。しかしBlue Oceanは、「開発者のためのダッシュボード」としてゼロから設計されています。
Blue Oceanがもたらす3つの圧倒的なメリット
1. パイプラインの完全な視覚化:複雑な多段階ビルドや並列処理(Parallel)が、まるで路線図のように美しく可視化されます。どこで失敗したかが1秒で分かります。
2. 直感的なボトルネックの特定:どのステージに何秒かかったのかがグラフ化され、遅い処理が一目瞭然になります。
3. コードとビジュアルのシームレスな往来:宣言型パイプライン(Declarative Pipeline)と完全に統合されており、視覚的にパイプラインを構築・編集することも可能です。
—
2. 導入のステップ:驚くほど簡単なセットアップ
それでは、あなたの環境にBlue Oceanを導入していきましょう。セットアップは拍子抜けするほど簡単です。
ステップ1: プラグインのインストール
1. Jenkinsの管理画面にアクセスします。
2. [Jenkinsの管理] (Manage Jenkins) > [プラグインの管理] (Plugins) を開きます。
3. [利用可能] (Available plugins) タブを選択し、検索窓に `Blue Ocean` と入力します。
4. 「Blue Ocean」 プラグインにチェックを入れ、[再起動せずにインストール] (Install without restart) をクリックします。
※依存関係にある関連プラグインも自動で一緒にインストールされるため、これだけで準備は完了です。
ステップ2: 触ってみよう(URLの魔法)
インストールが完了したら、Jenkinsのトップページを見てみてください。
左側のメニューに「Open Blue Ocean」というクールな青いアイコンが出現しているはずです。
これをクリックするか、お使いのJenkinsのURLの末尾に `/blue` を足してみましょう。
(例: `http://your-jenkins-server:8080/blue/`)
どうですか? いつもの見慣れたお堅いJenkins画面から、洗練されたモダンなダッシュボードに切り替わりましたね!
—
3. 精度高い「Hello World」!実践的パイプラインで動作確認
百聞は一見に如かず。実際に動くパイプラインを作って、Blue Oceanの真価を体感してみましょう。
今回は、モダンな開発の標準である「Declarative Pipeline(宣言型パイプライン)」を使用します。
ジョブの作成とJenkinsfileの配置
お好きなGitリポジトリ(GitHubやGitLabなど)を用意し、ルートディレクトリに `Jenkinsfile` という名前で以下のコードを配置してください。
// Jenkinsfile (Declarative Pipeline)
pipeline {
// 実行するエージェント(環境)の指定
agent any
// パイプライン全体の設定
options {
// ビルド履歴を最大10件に制限してディスクを圧迫しないようにする親切設計
buildDiscarder(logRotator(numToKeepStr: ’10’))
}
// パイプラインを構成するステージたち
stages {
stage(‘チェックアウト’) {
steps {
echo ‘=== ソースコードをリポジトリから取得中… ===’
checkout scm
}
}
stage(‘ビルド & テスト’) {
steps {
echo ‘=== アプリケーションのビルドとテストを実行中… ===’
// 擬似的に処理時間を再現
sh ‘sleep 3’
}
}
stage(‘セキュリティスキャン (並列実行)’) {
parallel {
stage(‘静的解析’) {
steps {
echo ‘静的コード解析を実行中…’
sh ‘sleep 2’
}
}
stage(‘依存関係脆弱性チェック’) {
steps {
echo ‘ライブラリの脆弱性をスキャン中…’
sh ‘sleep 2’
}
}
}
}
stage(‘デプロイ’) {
steps {
echo ‘=== 本番環境へのデプロイメント完了! ===’
}
}
}
// パイプライン終了後の処理
post {
success {
echo ‘🎉 すべてのステージが成功しました!素晴らしい!’
}
failure {
echo ‘🔥 どこかでエラーが発生しました。ログを確認してください。’
}
}
}
Blue Oceanで見てみよう!
このジョブをJenkinsでビルド(実行)し、Blue Oceanの画面からそのジョブを開いてみてください。
画面には、次のような素晴らしい光景が広がります。
1. 美しいフローチャート:「チェックアウト」から「デプロイ」までの流れが一本の美しいパイプラインとして描かれます。
2. 並列処理の可視化:「セキュリティスキャン」のステージでは、「静的解析」と「依存関係脆弱性チェック」がきれいに枝分かれして同時に実行されている様子がリアルタイムでアニメーション表示されます。
3. ワンクリックでログ確認:失敗したステップ(例えば赤い×がついた箇所)をクリックするだけで、そのステップピンポイントのログだけがサクッと表示されます。もう何千行ものログを上から下までスクロールする必要はありません!
—
4. チームへの導入と定着のコツ
新しいツールを導入する際、一番高い壁は「チームメンバーの抵抗感」です。最後に、Blue Oceanをチームに定着させ、開発体験を爆上げするための実践的なコツをいくつか伝授します。
- ブックマークの書き換えを推奨する
チームメンバーのブラウザのブックマークにあるJenkinsのURLを、クラシックUIのものから `/blue` がついたURLに変更してもらいましょう。「あれ、Jenkinsってこんなにカッコよかったっけ?」と思わせることが第一歩です。
- 「エラー箇所の特定時間」を短縮できた成功体験を共有する
「昨日、ビルドコケたとき、Blue Oceanのおかげで秒で原因箇所分かったよね」という成功体験をデイリースタンドアップなどで共有してください。自然とチーム全員がBlue Oceanを使うようになります。
- 設定の変更はクラシックUIと使い分ける
Blue Oceanは「見る・実行する・視覚的に確認する」ことにおいては最強ですが、複雑なグローバル設定やプラグインの管理などは、依然として従来のクラシックUI(または両者の併用)が必要です。「日々の開発・確認はBlue Ocean、管理はクラシック」と役割を割り切りましょう。
—
おわりに
Jenkinsは古い、時代遅れだ――そんな風に言われてしまうこともありますが、Blue Oceanを組み合わせることで、Jenkinsは現代の最前線で戦える強力なCI/CDプラットフォームに生まれ変わります。
パイプラインが美しく視覚化されることで、チーム全体の「品質への意識」や「デプロイに対する心理的安全性」が劇的に向上します。
ぜひ今日の業務から、あなたのJenkinsに「Blue Ocean」の風を吹かせてみてください。あなたの開発ライフが、もっと快適で楽しいものになることを応援しています!