Запуск конвейера в цикле с другим параметром в последовательности - PullRequest
0 голосов
/ 21 ноября 2018

Я читал о совместном использовании стандартного конвейера для нескольких проектов здесь

У меня есть случай, когда я хочу запустить шаблон конвейера по нескольким данным в цикле.Этот конвейер должен работать последовательно.Вот код:

//Jenkinsfile
    startPipeline()
def startPipeline(){
    for(i = 0 ; i < 3; i++)
        myPipeline(name : "Hello${i}")
}

У меня есть шаблон конвейера следующим образом:

//vars/myPipeline.groovy
def call(Map pipelineParams){
    pipeline {
        agent any
        stages {
            stage('print Hello') {
                steps {  echo "${pipelineParams.name}"  }
            }
        }
    }
}

Ожидается, что конвейеры будут запущены последовательно.Когда я пытаюсь это сделать, я получаю журнал частичных исключений исключения

java.lang.IllegalStateException: Only one pipeline { ... } block can be executed in a single run.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:83)
    at org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:105)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...