2016-07-25 9 views
1

にフリースタイルの仕事を変換する私は(下流を経由して)以下のグラフのジョブ定義を持っていると私は、平行オプションでパイプラインに移行します。がパイプライン

  A 
     / \ 
     B C 
    /\/
    E D 

A -> B, C 
B -> E, D 
C -> D 

BとCは並行して実行できます.DはBとCが終了するまで待つ必要があり、EはBの終了後に実行できます。

私はパイプラインで同じことを行うことができますどのように?

私は以下しようとしたが、Cのジョブが終了するまで、この設定Eで

stage 'Stage 1' 
build 'A' 

parallel one: { 
    build 'B' 
}, second: { 
    build 'C' 
} 

build 'D' 
build 'E' 

をお待ちしております。

答えて

0

あなたはビルドがececutedれるべきノードを設定する必要があります。たとえば、

node { 
    stage 'Build A' 
    build 'A' 
} 

これはあなたの問題を解決するものだと思います。まあ

+0

私の問題は、ノードではありません。パイプラインで同じフロー依存関係を設定する方法がわかりません。 – Shurik

1

、あなただけのビルドBが行われたときにそれが起こるのだろうBと並列ブロック内のEを構築置く場合。私はあなたがまた待機を追加することができます:falseは、並列のステップをビルドを待つことがないと思う。ただし、ビルドEの後に別のビルドが必要な場合は、この問題が発生する可能性があります。

stage 'Stage 1' 
build 'A' 

parallel one: { 
    build 'B' 
    build 'E', wait: false 
}, second: { 
    build 'C' 
} 

build 'D'