我有以下管道代码
node('linux-devops') {
stage('Create job') {
def jobTemplate = null
String jobFolder = "feature-development/feature-deploys"
def jenkins = Jenkins.getInstance()
// For some reasone jenkins.getItem("job-template") returns null
// so I do the following for()
def jobs = jenkins.getAllItems(Job.class)
for (job in jobs) {
if (job.fullName == "$jobFolder/job-template") {
jobTemplate = job
break
}
}
def job = jenkins.copy(jobTemplate, "$jobFolder/feature%2Fdev-1234")
job.save()
}
}
它可以工作,但是它会以您的名字而不是全名(带有路径)复制作业,即“功能开发/功能部署/功能%2Fdev-1234”。我希望作业名称“ feature / dev-1234”位于文件夹“ feature-development / feature-deploys”中
换句话说,我有这个Jenkins工作文件夹,其中有以下工作
feature-development/feature-deploys/
/job-template
运行脚本后,我需要这种结构。注意“ feature / dev-1234”是新作业的名称。
feature-development/feature-deploys/
/job-template
/feature/dev-1234