JobDSL-如果Jenkins中不存在新作业,则创建新作业
我创建了这个Groovy JobDSLs脚本来生成一个新的Jenkins jobsJobDSL-如果Jenkins中不存在新作业,则创建新作业,jenkins,groovy,jenkins-job-dsl,Jenkins,Groovy,Jenkins Job Dsl,我创建了这个Groovy JobDSLs脚本来生成一个新的Jenkins jobs List screen = [["AAA", "Description" ],["AAA", "Description" ]] for (item in screen) { job(item[0]) { description(item[1]) steps { shell('command ...') } } } 如果J
List screen = [["AAA", "Description" ],["AAA", "Description" ]]
for (item in screen) {
job(item[0]) {
description(item[1])
steps {
shell('command ...')
}
}
}
如果JobDSL插件在Jenkins中已经存在,有没有办法告诉它不要在列表中创建作业?我不想为了生成新作业而保留单独的文件。一个文件用于新作业,一个文件用于所有现有作业。如果作业定义没有更改,作业DSL不会更新作业 如果作业定义发生更改,并且您希望忽略这些更改,请在Process job DSL build步骤中选择现有作业和视图的操作:忽略更改选项 如果您在groovy管道中使用jobDsl以编程方式执行此操作,它可能如下所示:
jobDsl的目标是:“jobs/**/seed.groovy”,忽略现有:true您完全正确@daspilker如果同名作业已经存在,它将保留历史记录和日志。此代码仅在设置不同时更新同名作业。这是伟大的,我没有预料到,它会表现得很自然。