2016-12-22 4 views
0

このJavascriptジョブを生成するために、このGroovy JobDSLsスクリプトを作成しました。JobDSL - すでにJenkinsに存在しない場合は新しいジョブを作成します。

List screen = [["AAA", "Description" ],["AAA", "Description" ]] 
for (item in screen) { 
    job(item[0]) { 
     description(item[1]) 
     steps { 
      shell('command ...') 
     } 
    }​ 
}​ 

それはすでにジェンキンスに存在する場合、リスト内のジョブを作成しないためにJobDSLプラグインを伝えるためにどのような方法はありますか?私は、新しいジョブを生成するためのファイルを別々に保管したくありません。新しいジョブのための1つのファイルと既存のすべてのジョブのための1つのファイル。

答えて

2

ジョブ定義が変更されない場合、ジョブDSLはジョブを更新しません。

ジョブ定義が変更され、これらの変更を無視する場合は、Process Job DSLsビルドステップでAction for existing jobs and views: Ignore changesオプションを選択します。

あなたはグルーヴィーパイプラインでjobDslでプログラム的にこれをやっている場合、それは次のようになります。

jobDsl targets: 'jobs/**/seed.groovy', ignoreExisting: true

+0

同じ名前のジョブがすでにそれは歴史とログを辛抱存在する場合は、絶対的に正しい@daspilkerです。このコードは、設定が異なる場合にのみ同じ名前のジョブを更新します。これは素晴らしいです、私は期待していなかった、それは自然に望ましい方法で動作するでしょう。 –

関連する問題