jenkins - How do I get/set property on loaded scripts in Jenkinsfile -
i have jenkinsfile load external files, not know how manage fields on it:
main script:
node { deletedir() git credentialsid: 'git-credentials', url: 'git@git-hostname:project/ci-cd.git' load 'pipeline.groovy' }() pipeline.groovy:
def pipe = load 'pipeline-utils.groovy' pipe.deployat << env.branch_name echo "foo -> ${pipe.deployat}" { -> echo 'hello there' pipe.deploy() } pipeline-utils.groovy:
def deployat = [] def deploy() { echo 'do it' } it says groovy.lang.missingpropertyexception: no such property: deployat class: groovy.lang.binding, if echo ${pipe.class} says script2, , if remove deployat lines says do it expected. not right, if can call methods why can not access fields?
my jenkins version 2.19.1.
Comments
Post a Comment