2

Jenkins(またはHudson)で、アーティファクトのコピープラグインを使用してアーティファクトを相互にコピーするパラメータ化されたジョブのパイプライン(A-> Bなど)を設定しました。すべてのジョブは同じパラメーターを使用します(例:ターゲットプラットフォーム)。各ジョブは、古いビルドとアーティファクトを破棄してディスク使用量を制限し、最新の安定したビルドアーティファクトのみを保持するように設定されています。パラメータ設定のみが異なる多くのジョブを維持する必要がないように、パラメータ化されたビルドを使用します。

このセットアップは、すべてのビルドが同じパラメーター設定のパイプラインで次々に実行される場合にのみ機能します。したがって、最新のビルドアーティファクトは、依存するジョブのプラットフォームパラメーター設定と一致します。ここで、誰かが最初にプラットフォームx用にジョブAを作成し、次にプラットフォームy用にビルドし、次にプラットフォームx用にBを作成した場合、プラットフォームx用のAからのアーティファクトはすでに破棄されているため、Bはこれらをコピーできません。

Jenkinsに、ビルドごとに異なるパラメーターを使用して最新のアーティファクトを保持し、他のすべてのアーティファクトを破棄するように指示する方法はありますか?

4

1 に答える 1

0

手動による解決策: アーティファクトを A から、パラメータによってキー付けされたディレクトリにコピーします。ジョブ A は、ビルドの前にディレクトリを消去します。したがって、古いアーティファクトがジョブ B に渡されないようにします。ジョブ B は、実行後にディレクトリを消去します。

于 2012-03-07T13:31:12.510 に答える