0

テンプレート ジョブをコピーして、Jenkins で新しいジョブを作成しています。単一のリポジトリを持つテンプレートの場合、以下のコードを使用してブランチをビルド セクションに変更しています。

job('example') {
  using('template_job')
  configure { node ->
    node / scm / branches / 'hudson.plugins.git.BranchSpec' {
      name 'branchname'
     }
  }
}

しかし今、私のテンプレート ジョブには複数のリポジトリがあり、構成ブロックを使用してリポジトリの 1 つだけをビルドするようにブランチを変更する必要があります。どうすればこれを達成できますか。

以下のコードも試しましたが、機能していません。変更は行われていません。この作業の変更はありますか?

 configure {node ->
    node / scm/ 'hudson.plugins.git.GitSCM'[1]  / branches / 'hudson.plugins.git.BranchSpec'{ 
    name branchName1
    };   
    }
4

1 に答える 1

0

/演算子は、指定された名前を持つ最初の子のみを返します。中間ノードを変数に割り当ててから、groovy.util.NodeAPI を使用して子にアクセスする必要があります。それ以降は、 を使用し/て再びナビゲートできます。以下の例は、2 番目の SCM 構成を変更したもので、インデックスはゼロから始まります。

job('example') {
  using('template')
  configure { node ->
    def scms = node / scm / scms
    scms.children()[1] / branches / 'hudson.plugins.git.BranchSpec'{ 
      name('foo')
    }
  }
}
于 2016-03-16T16:48:07.810 に答える