I have the following shared-library file *defaultCiPipelineGeneric.groovy*
def call(body) {
// evaluate the body block, and collect configuration into the object
def pipelineParams= [:]
body.resolveStrategy = Closure.DELEGATE_FIRST
body.delegate = pipelineParams
body()
pipelineParams = initializePipeline(pipelineParams,
pipelineParams.buildType)
pipeline {
agent {
label pipelineParams.nodes
}
...
The pipeline is then uses as follows (e.g. in
*jenkins-pipeline-demo-generic*):
library identifier: "pipeline-helper@master"
defaultCiPipelineGeneric {
nodes = 'windows-test'
buildScript = 'build.groovy'
}
That actually works fine. Now If i introduce additional methods like this:
def call(body) {
this.call(body, null)
}
def call(body, buildFunction) {
this.call(body, null, null)
}
def call(body, buildFunction, deployFunction) {
// evaluate the body block, and collect configuration into the object
def pipelineParams= [:]
body.resolveStrategy = Closure.DELEGATE_FIRST
body.delegate = pipelineParams
body()
pipelineParams = initializePipeline(pipelineParams,
pipelineParams.buildType)
pipeline {
agent {
label pipelineParams.nodes
}
This fails with java.lang.NoSuchMethodError: No such DSL method 'agent'
found among steps
Why does that not work?
--
You received this message because you are subscribed to the Google Groups
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/jenkinsci-users/40965400-9f4d-4dbf-8375-35558fb0f731n%40googlegroups.com.