2013-04-08 30 views
5

私はそれらの間に自動トリガーを持つ複数のジョブのセットアップを持っています。 trueに設定する「下流プロジェクトはを構築しているときブロックビルドを」「上流プロジェクトはを構築しているときブロックビルド」とJenkinsでアップストリーム/ダウンストリームジョブの選択的なブロックを定義する

ジョブのすべてが、両方を持っています。他のジョブの成果物をアップロードするために追加の仕事が必要になるまではうまくいきました。

私は建築パイプライン全体をブロックしたくない長いプロセスです。だから私は仕事としてそれを分けた。それは他のすべてのジョブによってトリガーされ、アーティファクトを低帯域幅接続のリモートサーバーにプッシュします。

しかし、設定された設定によってまだ待機しています。

この特定の仕事を待たないようにする方法はありますか?たぶんアプローチは間違っていて、それは彼らにとって川下の仕事ではないはずですか?そうでない場合 - 他のジョブの実行を監視し、結果を簡単に収集する方法たぶんArtifactDeployerの代わりに、タスクを設定して終了するための非ブロッキングの代替案があります - アップロードジョブの結果を収集する必要はありませんか?

答えて

6

私自身が答えを見つけました。それは私の目の前でした...

私はParametrized Trigger Pluginの非常に重要な部分を見落としました。ビルドのステップとして使用し、ポストビルドのアクションではない場合、それはダウンストリームジョブの結果を待つか待機しないことができます。ダウンストリームは、上流ジョブの(非ブロッキング)サブプロジェクトとして表示されます。

+0

私はそれも見ませんでした。なぜ彼らは両方のIDKでそれを持っていない... – jeremyjjbrown

1

Jenkins Build Flow pluginを見ると、簡潔なDSLを使用して複雑なワークフローを調整することができます。これは、複数のジョブの設定を調べるよりもはるかに分かりやすいものです。

+2

単純なfire'n'forgetシナリオではあまりにも多くの負担ですか?さらに、私は途中のものが変わったときにプロセス全体を呼びたくはありません。 – maciasello

関連する問題