我有以下内容:
job {
scm {
git {
remote {
url(GIT_URL)
}
branch('master')
}
}
}
它工作得很好,但我希望它能够将'Check out to specific local branch'设置为'master'。怎么做的?
我在https://github.com/jenkinsci/git-plugin/blob/master/src/main/java/hudson/plugins/git/GitSCM.java中找不到任何可以使用的东西,但我可能错过了一些东西。
答案 0 :(得分:4)
Job DSL目前不支持该选项,但您可以使用configure block修改生成的配置XML:
job {
scm {
git {
remote {
url(GIT_URL)
}
branch('master')
configure { node ->
node / 'extensions' << 'hudson.plugins.git.extensions.impl.LocalBranch' {
localBranch('master')
}
}
}
}
}
答案 1 :(得分:4)
由于已经接受了答案,因此增加了对“检出特定本地分支”的支持:
Jersey 2.2
答案 2 :(得分:0)
还有另一种方法来执行命名的本地分支
multibranchPipelineJob(pathToJob) {
branchSources { ... }
configure {
def traits = it / sources / data / 'jenkins.branch.BranchSource' / source / traits
traits << 'jenkins.plugins.git.traits.LocalBranchTrait' {
localBranch('**')
}
}
}