【发布时间】:2018-12-07 10:36:12
【问题描述】:
我在 Windows 上的 Jenkins 中有许多多分支管道作业,每个作业都使用标准程序 Jenkinsfile,其中包含在我们的构建农场上运行构建的各种方法,包括计算合理位置以检查源代码的方法到。
我遇到的问题是,当推送到名称很长的分支时,关联的构建会失败,因为 Jenkins 尝试签出分支的路径太长。
似乎导致失败的签出是 Jenkins 执行的“默认”签出,而不是由 Jenkinsfile 执行的签出,已为其计算了适当的路径。
从一些相当广泛的谷歌搜索来看,我似乎需要使用 skipDefaultCheckout() 来防止这种默认结帐,但目前尚不清楚在这种情况下应该如何完成。
每个项目的根目录下都有一个 Jenkinsfile,其中包含以下内容:
node {
standardJenkinsfile.include()
}
标准Jenkinsfile 被配置为一个全局管道库。 include() 方法协调构建。
我尝试在调用标准 Jenkinsfile 之前将 skipDefaultCheckout() 添加到项目的 Jenkinsfile 中,并且我还尝试将其添加到标准Jenkinsfile.include() 方法的开头,但默认签出仍在发生。
这种配置有没有办法阻止默认结帐?或者至少指定结帐的目标目录?
【问题讨论】:
标签: jenkins jenkins-pipeline multibranch-pipeline