#!groovy
/*
* Reproduction of the "hanging sh" problem
*/
timestamps {
node {
stage ("Running in sequence") {
echo "Start of stage running in sequence"
sh "pwd"
echo "End of stage running in sequence"
}
stage ("Running in parallel") {
echo "Start of stage running in parallel"
def parallelSteps = [:]
parallelSteps["step1"] = createParallelStep()
parallel parallelSteps
echo "End of stage running in parallel"
}
}
}
@NonCPS
def createParallelStep() {
echo "Creates parallel step"
return {
node {
echo "Running parallel step"
sh "pwd"
echo "Parallel step complete"
}
}
}