Я пишу код для генерации заданий Jenkins и использую Kotlin для логики c для генерации заданий Jenkins. Плагин Jenkins, который я использую, - это плагин Jenkins Job DSL , который написан на Groovy для генерации заданий. У меня возникают проблемы при установке параметра definition
при вызове кода Kotlin для кода Groovy из-за незнания, как создать соответствующий объект groovy .lang.Closure.
Здесь мой мой Kotlin код:
val pipelineJob = dslFactory.pipelineJob("my-job")
// pipelineJob.definition(JOB_DEFINITION_GOES_HERE) <-- this is the part I can't figure out
Вот код в Groovy, который я пытаюсь перенести на Kotlin:
dslFactory.pipelineJob("my-job").with {
definition {
cps {
script("deleteDir()")
sandbox()
}
}
}
Вот определение метода, который я вызываю:
void definition(@DslContext(WorkflowDefinitionContext) Closure definitionClosure) {
Другие ссылки: DslFactory