これは、Apache Maven と IBM Rational ClearCase がうまく統合されているかどうかを尋ねる質問から始まりました。私が発見したことを書き留めるべきだと思った-さまざまな編集が必要になるだろうが、最終的には私が望むすべてを追加するつもりだ.
環境
ClearCase - ClearCase のバージョン 7.0.1.2。
Maven - Maven Web サイトからのすべて。
Hudson - Hudson の Web サイトから直接ダウンロードしたバージョン 1.307
質問
- Maven は VOB から実行されますか?
Maven2 のすべてのバージョンを VOB 'スタック' にインストールしました。つまり、バージョン 2.0 を追加してラベルを付け、ラベルをロックしてから、2.0.1 を一番上に追加しました。
無関係なファイルが存在しないようにするために、clearfsimport で -rnname フラグを使用しました。
このように、ラベルを使用して構成仕様でアクセスしたい Maven のバージョンを指定するだけで済みますが、maven 実行可能ファイルのパスは/maven/bin/mvn のままにします。
すべてのバージョンがインストールされると、Dynamic View を介してそこから Maven を問題なく実行できました。リポジトリは通常どおり、Nexus の内部インストールからユーザーのホーム ディレクトリにダウンロードされます。これにより、チェックインとチェックアウトに関する問題が解決されます。
ツールをソース管理に保持する利点は、会社全体の設定 (内部リポジトリを指すなど) を設定できることです。その後、任意のプラットフォームで VOB から Maven の単一インスタンスを実行できます。これにより、最初に設定した設定が保持されます。
Maven プロジェクトでは、src ディレクトリと pom.xml のみをソース管理に保持しました。他のすべては後で自動生成できるからです。
- Hudson は ClearCase で動作しますか?
Hudson を ClearCase Dynamic Views で実行するようにセットアップするのに問題はありませんでした。Hudson の作業ディレクトリからビューのルート (この場合は /view/xxx) へのシンボリック リンクを作成するだけで済みました。ClearCase プラグインはct lshistoryを正常に実行して、開発者がマージする統合ブランチに変更があったかどうかを確認しました。
ジョブの初期環境 (config.xml と動的ビューのシンボリック リンクのみ) をセットアップする小さなスクリプトを作成して、ジョブに正しいビューがリストされ、初期設定が正しくなるようにしました。その後のユーザーによる拡張は、デフォルトのテンプレートを自分で設定するのではなく、デフォルトのテンプレートに変更するものでした。
Hudson の全体的な設定では、$CLEARCASE_VIEW 環境変数を使用して、Maven 実行可能ファイルへのパスを設定しました。このように、Maven のバージョンは、Hudson 内で選択したバージョンではなく、構成仕様で設定されたバージョンに依存していました。
これにより、私 (管理者) とユーザーの両方の余分な管理を省くことができます。
- どの内部リポジトリ マネージャーを使用しましたか?
Sonatype Nexus を内部レポジトリ マネージャーとして設定しました。主な理由は、Sonatype のブログで、Hudson が Nexus との統合を強化する予定であることを読んだためです。また、セットアップして試してみたところ、リポジトリマネージャー内のグループをより柔軟に調整できるため、大規模な商用環境により適していると思いました。これは、多数のプロジェクトに役立ちます。