Я пытаюсь настроить задание Jenkins, пытаясь выполнить команду groovy. В частности, я пытаюсь вызвать параллельные задания на основе определенных критериев. Я знаю, что следует использовать плагин Pipeline, но наш Jenkins пока не оборудован для работы с этим плагином. Тем временем я пытаюсь использовать параллельную конструкцию для достижения распараллеливания. Вот мой Groovy код,
def projectName = "stage_run_test"
def testCategory = ["Test1","Test2"]
def runMap = [:]
for (int i = 0; i < testCategory.size(); i++) {
def index = i
runMap[index] = {build job: projectName, parameters: [[$class:
'StringParameterValue', name: 'TEST', value: testCategory[index]],
[$class: 'StringParameterValue', name: 'BRANCH', value:
env.BRANCH], [$class: 'StringParameterValue', name:
'CHANGE', value: env.CHANGE]]}
}
parallel runMap
Однако, когда я запускаю это задание, появляется сообщение об ошибке
11:52:16 [stage_initiate_test] $ groovy /home/jenkins/workspace/stage_initiate_test/hudson1563131133260457651.groovy
11:52:17 Caught: groovy.lang.MissingMethodException: No signature of
method: hudson1563131133260457651.parallel() is applicable for argument
types: (java.util.LinkedHashMap) values:
[[0:hudson1563131133260457651$_run_closure1@3f686e67, ...]]
11:52:17 groovy.lang.MissingMethodException: No signature of method:
hudson1563131133260457651.parallel() is applicable for argument types:
(java.util.LinkedHashMap) values:
[[0:hudson1563131133260457651$_run_closure1@3f686e67, ...]]
11:52:17 at
hudson1563131133260457651.run(hudson1563131133260457651.groovy:17)
Должен ли я импортировать что-то конкретное для выполнения этого? Почему параллельный метод недоступен в оболочке Groovy для обычной работы Дженкинса? Я мог бы пропустить что-то очень тривиальное, пожалуйста, помогите