私は、Jenkinsのジョブとソースリポジトリとの間に1対1のマッピングを持つ、Jenkinsによって構築されたさまざまなコードのビットを含むいくつかのソースコードリポジトリを持っています。これらとは別に、リポジトリには、他のreposを構築するJenkinsジョブを作成/更新するためのJob DSLスクリプトが含まれています。状況は次のようになります。最後に実行してから変更されたDSLスクリプトだけを実行するJenkinsのシードジョブ?
私は、右のコードと一緒に、個々のソースリポジトリ内のジョブDSLスクリプトを保存する方法を見つけると、トリガーされる単一のシード仕事をしていることを望んでいた他のリポジトリのにへのプッシュ通知によって。残念ながら、現在のところ、これは十分サポートされていないようです(this questionへの受け入れられた回答を参照)。それで、すべてのDSLを単一の別個のリポジトリに残し、そのリポジトリへのプッシュ通知がGroovyスクリプトの再処理をトリガーするようにするのが最も簡単なようです。そして、すべてがうまく機能します。
つまり、実際に変更されたジョブだけでなく、起動されたシードジョブがDSLスクリプトのすべてを再実行することに少し気になります。 (私は正直なところ、これが「問題」なのかどうかは確かではありませんが、後で驚くべき動作につながることが心配です)
シードジョブを再構成できる方法はありますかビルドをトリガしたコミットによって変更されたスクリプトを再実行しますか?または...これは心配する価値がないのですか?
変更されていないDSLスクリプトを再実行することを心配する必要はないことを確認してくれてありがとう、特にそれを証明するためのソースコードリンクを提供してくれてありがとう。 – evadeflow