У меня есть конвейер, и в сценарии конвейера я хотел бы найти всех агентов с определенной меткой и запустить этапы для каждого из них. В этом случае внутри 'Clean docker' я использую sh для перебора всех агентов с помощью «specificLabel» для запуска docker prune
В настоящее время это то, что у меня есть
def generateStage(nodeLabel){
stage("${nodeLabel}: Docker prune all}") {
agent {
label nodeLabel
}
steps {
withCredentials([string(credentialsId: 'user_pwd', variable: 'USERPWD')]) {
sh 'docker system prune -a -f'
sh "echo $USERPWD | sudo -S systemctl restart docker.service"
}
}
}
}
pipeline {
agent any
options {
timeout(time: 30, unit: 'MINUTES')
}
stages {
stage('Clean docker') {
steps {
script {
nodeLabels = nodesByLabel(label: 'prunedebug')
for (nodeLabel in nodeLabels) {
generateStage(nodeLabel)
}
}
}
}
}
}
Но я получил No such DSL method 'agent' found among steps
ошибку. Посоветуйте, пожалуйста, как это изменить?
Спасибо