Jenkins管道与文件夹插件。如何构建位于不同文件夹的作业
我将jenkins 2.0与Cloudbees文件夹插件一起使用,因为这允许我创建多个类似的项目。每个文件夹中的作业都可以分解,留下一个顶级作业,然后可以调用参数化作业 我想将参数化作业放在通用文件夹中,然后从管道脚本调用它们 因此在jenkins浏览器中,我有3个文件夹:ProjA、ProjB和Generic。在ProjA下,我有一个管道作业,需要在generic文件夹中构建一个名为TestJib的作业 我的管道是这样的:Jenkins管道与文件夹插件。如何构建位于不同文件夹的作业,jenkins,directory,cloudbees,Jenkins,Directory,Cloudbees,我将jenkins 2.0与Cloudbees文件夹插件一起使用,因为这允许我创建多个类似的项目。每个文件夹中的作业都可以分解,留下一个顶级作业,然后可以调用参数化作业 我想将参数化作业放在通用文件夹中,然后从管道脚本调用它们 因此在jenkins浏览器中,我有3个文件夹:ProjA、ProjB和Generic。在ProjA下,我有一个管道作业,需要在generic文件夹中构建一个名为TestJib的作业 我的管道是这样的: node('master'){ stage ('Run jo
node('master'){
stage ('Run job'){
build job: "../Generic/TestJob",
parameters: [[$class: 'StringParameterValue', name: 'testa', value: tests]]
}
}
运行此命令将给出:“错误:没有名为../TestJob的参数化作业”
我在构建作业上尝试了许多变体:“../Generic/TestJob”,但我总是得到相同的错误。
如果我将TestJob与管道作业放在同一个文件夹中,这就可以了。您只需在之前设置不带斜杠的文件夹即可 如果文件夹FolderA中有JobA,则您的作业将类似于:
stage ('My Stage'){
build job: "FolderA/JobA",
}
因此,对于您来说,您的解决方案将是:
node('master'){
stage ('Run job'){
build job: "Generic/TestJob",
parameters: [[$class: 'StringParameterValue', name: 'testa', value: tests]]
}
}
无论作业位于何处,您只需指示完整路径。您是否尝试过绝对路径,即
/Generic/TestJob
?文件夹路径是否相对于正在访问它的作业?你能做。/otherfolder/jobname
@red888是的,除非它以/
开头,否则它是相对的