2017-04-26 19 views
0

私は新しいJenkinsパイプラインを作成していますが、最終的には並行して実行したいという一連のステップがあります。しかし、私はこのパイプラインを開発している間、私はそれを順番に実行するようにしたいと思います。私は、パラレルステップが使用するスレッドの数などを指定する方法は見ていません。ここまでの基本コードはこれまで通りです。Jenkinsの並列タスクを連続して実行しています

node('x') { 
    stage('cleanup'){ 
     def cleanupScripts = [:] 
     cleanupScripts[1] = { sh(script: "cleanup1.sh") } 
     cleanupScripts[2] = { sh(script: "cleanup2.sh") } 
     cleanupScripts[3] = { sh(script: "cleanup3.sh") } 
     cleanupScripts[4] = { sh(script: "cleanup4.sh") } 
     parallel cleanupScripts 
    } 
} 

多くのコードを変更せずにこれらのシェルスクリプトを順番に実行したいと考えています。

答えて

0

ジェンキンで並行して実行する方法はわかりません。並列ジョブは、同じノードまたは異なるノードで実行できます。

実行する並列ジョブ

parallel (
// job 1, 2 and 3 will be scheduled in parallel. 
{ build("job1") }, 
{ build("job2") }, 
{ build("job3") } 
) 

あなたは、各クリーンアップ* .SHのジョブを作成し、上記のように、これらのジョブを呼び出すことができます。

よりシンプルなアプローチはparallelのコマンドを使用している

それともparallel cleanupScriptsの代わりに、最も単純な

clenaup1.sh &! clenaup3.sh &! clenaup4.sh &! ... 
+0

申し訳ありませんが、手順は、変数名のお粗末な選択でした。私はそれを変更します。 – Mateo

0

あなたはこのように使用することができます:

cleanupScripts.each{ key, value -> 
    value() 
} 
関連する問題