ء
выше тоже самое было - https://t.me/jenkins_ru/49747
Size: a a a
ء
t
t
ء
II
def run_on_node(server) {
return {
node(server) {
sh "echo 'shoopdawhoop on $server'"
}
}
}
def parallel_steps =
(1..30)
.collect { "server${it}"}
.collectEntries { [it, run_on_node(it)] }
println "$parallel_steps"
parallel parallel_stepsAK
II
node{} обернуть в stage(server) { ... }, и потом в каком-нибудь blue ocean или табличке стейджей смотреть на выхлопt
def run_on_node(server) {
return {
node(server) {
sh "echo 'shoopdawhoop on $server'"
}
}
}
def parallel_steps =
(1..30)
.collect { "server${it}"}
.collectEntries { [it, run_on_node(it)] }
println "$parallel_steps"
parallel parallel_stepsII
DK
t
node{} обернуть в stage(server) { ... }, и потом в каком-нибудь blue ocean или табличке стейджей смотреть на выхлопII
t
t
II
def run_on(server) {
return {
stage(server) {
sh "echo 'shoopdawhoop on $server'"
}
}
}
def parallel_steps =
(1..30)
.collect { "server${it}"}
.collectEntries { [it, run_on_node(it)] }
println "$parallel_steps"
node('some node') {
parallel parallel_steps
}
зайдёт на some node и там параллельно запустит 30 раз sh с разными параметрамиII
parallel, а просто в условном питоне сделать условное multiprocessing.Pool(30).map(run_something_on_server)
или не в питоне, в зависимости что там из инструментов внутри node доступноII
t
def run_on(server) {
return {
stage(server) {
sh "echo 'shoopdawhoop on $server'"
}
}
}
def parallel_steps =
(1..30)
.collect { "server${it}"}
.collectEntries { [it, run_on_node(it)] }
println "$parallel_steps"
node('some node') {
parallel parallel_steps
}
зайдёт на some node и там параллельно запустит 30 раз sh с разными параметрамиt
u