3

We have a Jenkins job that compiles our developers code each time they push to the repository and stores the build as an artifact (lets call it CompileApp). I have another job that smoke tests that code, copying the latest successful artifact from the build. However it cannot run against every single build due to resource constraints (call this job SmokeTest).

So SmokeTest executes periodically and each time it does I want to be able to set the build number of that job to the same build number of the CompileApp artifact I copied so that it is clear which build was tested. (I will also add a timestamp to the build number incase no builds have completed within this timeframe)

I can set the build number with the build name setter plugin which uses environment variables. But I am not sure how to access the CompileApp jobs build number using it. I have looked at the EnvInject plugin but haven't understood how to use it correctly.

Any advice and pointers would be very much appreciated.

4

5 に答える 5

6

COPYARTIFACT_BUILD_NUMBER_ YOUR_JOB変数を使用できます。YOUR_JOB元のジョブの名前です。

于 2014-01-29T23:24:12.997 に答える
0

この投稿を確認してください:ジェンキンスに複数のジョブのビルド番号を共有するよう説得する方法は?

重要なのは、 EnvInjectプラグインの「Evaluated Groovy Script」機能を使用して、任意のジョブへの参照を取得することです。したがって、あなたの場合、 CompileApp ジョブは SmokeTestApp ジョブの nextBuildNumber を設定できます。

于 2014-04-12T18:09:04.030 に答える
0

ビルド ジョブと同じワークスペースでダウンストリーム ジョブを実行し、統合テスト ジョブの実行中にビルド ジョブの実行をブロックすることをお勧めします。

その後、ダウンストリーム スモーク テスト ジョブをトリガーして、5/10 ビルドごとに実行できます。

于 2013-10-28T15:11:26.587 に答える