जेनकींस पाइपलाइन स्क्रिप्ट लिखते समय, समानांतर चरणों से चरों तक पहुंच सुरक्षित है? दस्तावेज इस पर स्पष्ट नहीं है।जेनकींस पाइपलाइन स्क्रिप्ट के साथ, क्या एक समांतर चरण से वैश्विक चर का उपयोग करना सुरक्षित है?
उदाहरण के लिए, इस पाइपलाइन कोड एक आम काउंटर और समानांतर शाखाओं से कतार को संशोधित करता है:
def donecount = 0;
def work = [6,5,4,3,2,1,0]
def branches = [:]
for (int i = 0; i < 3; i++) {
branches["worker-${i}"] = {
while (true) {
def item = null
try {
item = work.remove(0)
} catch (java.lang.IndexOutOfBoundsException e) {
break
}
echo "Working for ${item} seconds"
sleep time:item
donecount += 1
}
}
}
branches.failFast = true
parallel branches
echo "Completed ${donecount} tasks"