Как я могу определить несколько агентов в декларативном jenkinsfile?
В моем Jenkinsfile я хочу, чтобы определенный этап выполнялся на обоих агентах параллельно. Например:
stage('abc'){
agent {
label "dev6" && "dev7"
}
steps {
xyz()
}
}
У меня есть два раба с меткой dev6 и dev7. Я хочу, чтобы xyz() запускался одновременно на агентах dev6 и dev7 одновременно. Как правильно это сделать? Мне нужен параллельный блок? из приведенного выше кода он просто запускает функции на одном из dev6 или dev7. Я пробовал с
label "dev6 || dev7"
label "dev6 && dev7"
но это работает. Может кто-нибудь помочь??
Спасибо
1 ответ
Решение
Вам нужно параллельно на уровне этапов, причина в том, что на самом деле вы хотите, чтобы это запускалось дважды на отдельных агентах. Если я не понял тебя.
pipeline {
agent none
stages {
stage('Test') {
parallel {
stage('Test On dev6') {
agent {
label "dev6"
}
steps {
xyz()
}
}
stage('Test On dev7') {
agent {
label "dev7"
}
steps {
xyz()
}
}
}
}
}