Khi viết kịch bản Đường dẫn Jenkins, có an toàn khi truy cập các biến từ các bước song song không? Tài liệu không rõ ràng về điều này.Với kịch bản đường dẫn Jenkins, có an toàn khi truy cập biến toàn cầu từ một bước song song không?
Ví dụ, mã đường ống này sẽ thay đổi một bộ đếm thông thường và hàng đợi từ các chi nhánh song song:
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"