我非常新手Jenkins和Job DSL插件。经过一番调查,我发现了如何使用DSL创建作业,现在我正在尝试使用DSL删除一个作业。 我知道使用以下代码禁用一个作业:
//create new job
//freeStyleJob("MyJob1", closure = null);
job("MyJob1"){
disabled(true);
}
它完美地运行。但是,我找不到任何删除Jenkins中另一个作业的方法。
请帮忙!
谢谢!
我非常新手Jenkins和Job DSL插件。经过一番调查,我发现了如何使用DSL创建作业,现在我正在尝试使用DSL删除一个作业。 我知道使用以下代码禁用一个作业:
//create new job
//freeStyleJob("MyJob1", closure = null);
job("MyJob1"){
disabled(true);
}
它完美地运行。但是,我找不到任何删除Jenkins中另一个作业的方法。
请帮忙!
谢谢!
job('seed_all') {
steps {
dsl {
external('*_jobdsl.groovy')
// default behavior
// removeAction('IGNORE')
}
}
}
test_jobdsl.groovy
:
job('test_stuff') {
steps {
shell('echo "I live!")
}
}
即使下次运行种子时,seed_all
创建的作业不在作业列表中,它们也将保持不变。
如果要删除作业,请更改您的种子作业代码:
seed_jobdsl.groovy
:
job('seed_all') {
steps {
dsl {
external('*_jobdsl.groovy')
removeAction('DELETE')
}
}
}
seed_all
作业以应用更改(seed_all
运行时会覆盖自身的配置)。然后进行以下更改:test_jobdsl.groovy
:job('test_other') {
steps {
shell('echo "The job is dead, long live the new job!"')
}
}
再次运行seed_all
。您会注意到test_stuff
将被删除,而test_other
将被创建。如果您删除test_jobdsl.groovy
然后运行seed_all
,test_other
将被删除。