Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

オリジナル: Fingerprint

相互依存のプロジェクトがある場合、プロジェクトのどのバージョンが、他のプロジェクトのどのバージョンで使用されているのか把握するのは難しくなります。Hudsonはこれを簡単にする"ファイルの指紋"を提供します。

例えば、MIDDLEプロジェクトに依存するTOPプロジェクトがあり、MIDDLEプロジェクトはBOTTOMプロジェクトに依存するとします。あなたはBOTTOMプロジェクトで作業しています。TOPチームが彼らが使用している bottom.jar でNPEが発生すると報告すると、あなたは、BOTTOMプロジェクトの#32で修正したはずと思いました。Hudsonは、どのMIDDLEプロジェクトのビルドとTOPプロジェクトが、 bottom.jar の#32を使用しているのか教えてくれます。

どうやって設定するの?

ファイル指紋を使用するには、関連するすべてのプロジェクトが、jarファイル(この場合は、 bottom.jar )のファイル指紋を記録するように設定されている必要があります。

例えば、どのBOTTOMビルドがどのTOPビルドに使用されるのか追跡したいだけであれば、TOPとBOTTOMが bottom.jar を記録するように設定します。どのMIDDLEビルドがどの bottom.jar を使用しているのかも知りたいのであれば、MIDDLEも設定します。

ファイル指紋の記録は簡単な操作なので、以下にあげる全ファイルのファイル指紋をとにかく記録するのが一番簡単です。

  1. プロジェクトが作成するjarファイル
  2. プロジェクトが依存するjarファイル

ファイル指紋を記録するファイルのサイズやビルドの数ではなく、ファイル指紋を記録するファイルの数がディスク容量に大きく影響を与えます。So unless you have a plenty of disk space, you don't want to fingerprint "*/".

どのように動くの?

ファイルの指紋は、単にMD5チェックサムです。HudsonはMD5チェックサムのデータベースを維持し、各MD5チェックサムについて、どのプロジェクトのどのビルドが使用しているか記録します。このデータベースは、ビルドが起動し、ファイルの指紋を取得する毎に更新されます。

必要以上にディスクを使用しないように、Hudsonは実際のファイルそのものは保存しませんが、その代わりに、MD5チェックサムとその利用状況だけを保存します。そのファイルは、$HUDSON_HOME/fingerprints にあります。

どうやって使用するの?

この機能を活用する2,3の典型的なシナリオがあります。

BOTTOMプロジェクトを開発していて、どのビルドがBOTTOM #13を使用しているか知りたいケース。

  1. BOTTOM #13のビルド画面を表示します。
  2. ビルドの成果物で、bottom.jar の"ファイル指紋"のアイコン を選択します。
  3. bottom.jar を使用しているプロジェクトとビルドが表示されます。

TOPプロジェクトを開発していて、TOP #10が使用している bottom.jar と {{middle.jar}}のビルドを知りたいケース。

  1. TOP #10のビルド画面を表示します。
  2. "指紋を見る"を選択します。
  3. TOP #10でファイル指紋を記録したファイルとその由来がすべて表示されます。

You have the TOP project that builds a jar. You also have the TOP-TEST project that runs after the TOP project and does extensive integration tests on the latest TOP bits. You want to know the test results of TOP #7.

  1. Go to TOP #7 build page.
  2. Click the "fingeprint" icon of top.jar in the build artifacts
  3. You'll see all the TOP-TEST builds that used it.
  4. Click it and you'll be taken to the appropriate TOP-TEST build page, which will show you test reports.
  5. If there's no TOP-TEST builds displayed, then that means TOP-TEST build didn't run against TOP #7. Maybe it skipped TOP #7 (this can happen if there are a lot of TOP builds in a short period of time), or maybe a new TOP-TEST build is in progress.
  • No labels