Created
September 21, 2020 11:22
-
-
Save kh0ma/340391cb58e18958d7e1997cac9de8f5 to your computer and use it in GitHub Desktop.
Jenkins closure and parallel variable vision
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def jobs = [ | |
jobA: [ | |
var1: 'var1 JobA' | |
], | |
jobB: [ | |
var1: 'var1 JobB' | |
], | |
jobC: [ | |
var1: 'var1 JobC' | |
], | |
] | |
def buildJobs = [:] | |
for (def jobKey : jobs.keySet()) { | |
def redefinedJobKey = jobKey | |
def redefinedValue = jobs[jobKey] | |
def redefinedVar1 = redefinedValue.var1 | |
buildJobs[jobKey] = { | |
println "redefinedJobKey=${redefinedJobKey}, WRONG >>> jobKey=${jobKey}" | |
println "redefinedValue=${redefinedValue}, valueFromRedefinedKey=${jobs[redefinedJobKey]}" | |
println "redefinedValue=${redefinedValue}, WRONG >>> value=${jobs[jobKey]}" | |
println "redefinedVar1=${redefinedVar1}, redefinedValue.var1=${redefinedValue.var1}" | |
} | |
} | |
parallel(buildJobs) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment