С помощью декларативного синтаксиса Jenkins можно запускать параллельные этапы без агента верхнего уровня. Это приводит к потреблению двух исполнителей, поскольку агент верхнего уровня помечен как «none»:
pipeline {
agent none
stages {
stage('Run on parallel nodes') {
parallel {
stage('Do one thing') {
agent any
steps {
...
}
stage('Do another thing') {
agent any
steps {
...
}
}
}
}
}
}
В сценариях с конвейерами, для которых требуется элемент 'узла' верхнего уровня, это, по-видимому, невозможно. Это в итоге потребляет трех исполнителей, хотя реальную работу выполняют только двое:
node {
stage('Run on parallel nodes') {
parallel ([
'Do one thing': {
node() {
...
}
},
'Do another thing': {
node() {
...
}
}
])
}
}
Возможен ли «облегченный» исполнитель верхнего уровня с помощью скриптовых конвейеров?