Вызов pipelineJob из Groovy-скрипта возвращает: java.lang.NoSuchMethodError: среди шагов не найден такой метод DSL pipelineJob

Я пытаюсь вызвать программный конвейер с помощью метода jobDSL pipelineJob, но я получаю Даже если он существует как плагин в Jenkins:

java.lang.NoSuchMethodError: No such DSL method 'pipelineJob' found among steps

вот что я звоню:

def invoke() {
  pipelineJob('example') {
    definition {
        cps {
            script("""

                    pipeline {
                       agent any
                       stages {
                            stage('pipeline from pipelineJob'){
                                steps{
                                   // script {
                                     sh '"Hello from pipelineJob!!!!"'    
                                   // }
                                }
                            }
                        }
                    }

                    """)

        }
    }
}
}

и это вызывается из простого файлового конвейера Jenkins:

pipeline {
    agent any
     
    stages {

        stage(Build'){
            steps{
                script {
                    myLib.invoke()
                }
            }
        }
 

    }
    
}

person user63898    schedule 29.09.2020    source источник
comment
вы не можете вызывать задания dsl steps как функции. Вам необходимо передать их (как строку) в метод jobDsl. jenkins.io/doc/pipeline/steps/job-dsl   -  person smelm    schedule 29.09.2020