Maven 実行可能ファイルのリポジトリ分離を設定する
Bamboo では、Maven (2.x 以降のみ) 実行可能ファイルをエージェントごとに分離できます。特定の Maven 実行可能機能に対してリポジトリ分離を設定すると、該当する実行可能ファイルを使用する各エージェントにそれぞれ独自の非公開 Maven 2.x アーティファクト ディレクトリが割り当てられ、これらの jar ファイルや依存関係ファイルの破損を回避できます。分離された各リポジトリ ディレクトリのパスは次のようになります。
$BAMBOO_HOME/.m2/AGENT-${bamboo.agentId}/repository
関連ページ
1 台のサーバー マシン上で同じユーザー アカウントで実行され、異なる Bamboo エージェントに属する複数の Maven 実行可能ファイルを実行する場合は、Maven 実行可能ファイルに対してリポジトリ分離を設定することをお勧めします。この場合、エージェントは同じ既定の Maven アーティファクト ディレクトリ $HOME/.m2/repository
(Windows ベースのサーバーの場合は %USERPROFILE%\.m2\repository
) を使用します。これは、Maven の依存関係 jar がダウンロードされ、Maven ビルドの「インストール」フェーズでプロジェクトのアーティファクトがインストールされるディレクトリです。
したがって、Bamboo でこれらの複数の Maven 実行可能ファイルが同時に使用されると、問題が発生する可能性があります。たとえば、1 台のコンピューター上の複数のエージェントがそれぞれ異なる Maven 実行可能機能を持ち、キューから同時に Maven ビルドを実行し始めた場合、異なる Maven 実行可能ファイルが同じ依存関係を同じアーティファクト ディレクトリの場所にダウンロードしようとし、ダウンロードされた jar ファイルと依存関係ファイルが破損する可能性があります。
始める前に
- この機能は Maven 1.x 実行可能ファイルでは使用できません。
- Bamboo で設定する Maven 実行可能ファイルに対してローカル リポジトリ分離を強制する場合は、使用する実行可能ファイルのラベルからそれがわかるようにしてください。たとえば、「Maven 2.x with local repository isolation (ローカル リポジトリ分離を使用した Maven 2.x)」などを使用します。
リポジトリ分離を使用した新しいローカル サーバー Maven 機能を設定するには、次の手順に従います。
- Click the icon in the Bamboo header and choose Overview.
- 左側のナビゲーション パネルで [Server Capabilities (サーバー機能)] をクリックします。
[Add Capability (機能を追加)] セクションで、実行可能ファイルを選択し、次のように詳細を入力します。
Capability Type (機能タイプ) [Executable (実行可能ファイル)] を選択 タイプ Maven オプションのいずれかを選択 (2.x 以降) Executable Label (実行可能ファイルのラベル) 「Maven with local repository isolation (ローカル リポジトリ分離を使用した Maven)」と入力
任意のラベルを使用できます。ただし、該当する Maven 2.x 実行可能ファイルがローカル リポジトリ分離を使用しているものであることを示す適切なラベルを入力すると、自身や Bamboo ユーザーにとって役立ちます。パス Maven 実行可能ファイルのパスを入力 - [追加] をクリックします。
- 追加したばかりの実行可能ファイルのラベルをクリックします。実行可能機能の要約画面が表示されます (次の「Maven 2.x 実行可能ファイル」スクリーンショットを参照)。
- [Edit Capability Configuration (機能設定を編集)] をクリックします。[Configure Capability (機能を設定)] 画面が表示されます (次の「Maven 2.x リポジトリ分離」スクリーンショットを参照)。
- [Local repository isolation (ローカル リポジトリ分離)] チェック ボックスを選択します。
- 保存をクリックします。
スクリーンショット: Maven 実行可能ファイル
スクリーンショット: Maven リポジトリ分離