2016-10-20 7 views
0

私は次のGroovyスクリプトました:繰り返しビルドジョブ構文を簡略化するには?

node { 
    stage('Testing') { 
     build job: 'Test', parameters: [string(name: 'Name', value: 'Foo'), string(name: 'Param1', value: Param1), string(name: 'Param2', value: Param2), string(name: 'Param3', value: Param3), string(name: 'Param4', value: Param4), string(name: 'Param5', value: Param5)], quietPeriod: 2, wait: false 
     build job: 'Test', parameters: [string(name: 'Name', value: 'Bar'), string(name: 'Param1', value: Param1), string(name: 'Param2', value: Param2), string(name: 'Param3', value: Param3), string(name: 'Param4', value: Param4), string(name: 'Param5', value: Param5)], quietPeriod: 2, wait: false 
     build job: 'Test', parameters: [string(name: 'Name', value: 'Baz'), string(name: 'Param1', value: Param1), string(name: 'Param2', value: Param2), string(name: 'Param3', value: Param3), string(name: 'Param4', value: Param4), string(name: 'Param5', value: Param5)], quietPeriod: 2, wait: false 
     // ... 
    } 
} 

ジェンキンスに複数のパラメータ化されたジョブを実行することを目指しています。さまざまなパラメータで実行する膨大な数のジョブがあるので、同じ構文を繰り返し、パラメータを一度定義して再利用しないようにしたいと思います。

最初のの名前はですが、それ以外は同じです。何度も何度も同じコードを繰り返すことなく - どのように私は同じパラメータ(Param5のParam1)を再利用することができますか?これを達成することができますどのように

答えて

2

あなたは簡単な方法でそれを行うことができます:

node { 
    stage('Testing') { 
     buildJob('Foo') 
     buildJob('Bar') 
     buildJob('Baz') 
     // ... 
    } 
} 

def buildJob(name) { 
    build job: 'Test', parameters: [string(name: 'Name', value: name), string(name: 'Param1', value: Param1), string(name: 'Param2', value: Param2), string(name: 'Param3', value: Param3), string(name: 'Param4', value: Param4), string(name: 'Param5', value: Param5)], quietPeriod: 2, wait: false 
} 
関連する問題