В моем конвейере есть этап, который проверяет, находится ли конкретный компьютер (узел) в автономном режиме. Если это так, я хочу пропустить следующий этап. Однако следующий этап настроен на использование автономного агента, поэтому он не может проверять предложение When.
Вот упрощенная версия моего конвейера:
pipeline {
agent none
environment {
CONTINUERUN = true
}
stages {
stage('Check Should Run') {
agent any
steps {
script {
CONTINUERUN = false
}
}
}
stage('Skip this stage') {
agent {
label 'offlineAgent'
}
when {
expression {
CONTINUERUN
}
}
steps {
//Do stuff here
}
}
}
}
Когда я запускаю это, сборка просто зависает на этапе «Пропустить этот этап». Я предполагаю, потому что агент не в сети. Как я могу пропустить этот этап, когда известно, что агент находится в автономном режиме?