Дженкинс-Декларативный Трубопровод - Как сделать конкретный этап отказа - PullRequest
0 голосов
/ 01 марта 2020

В моем декларативном конвейере Jenkins я выполняю небольшую проверку Patchnumber, передаваемого в параметре job. Если номер патча меньше 8 символов, конкретный этап должен завершиться неудачей. Ниже приведен код для того же. Здесь я вижу, что Стадия не проваливается и она переходит к следующей Стадии.

Как я могу заставить Стадию принудительно провалиться и прекратить выполнение всего Задания?

stage("Validate Patch Number Size")
{
    steps
    {
        script
        {
            if ( (params.ENGLISH_PATCH_NUMBER).length() == 8 && (params.BIP_DB_PATCH_NUMBER).length() == 8 && (params.KO_PATCH_NUMBER).length() == 8) {
                result = 'valid'
                echo "Patch number entered meets the recommended size 8 - Status:$result"
            } else {
                resultStatus = 'Invalid'
                echo "The patch number size doesnt meet the recommended size 8 - Status: $resultStatus "
                currentBuild.result='FAILURE'
                echo "The current status is ${currentBuild.result}"
            }
        }
    }
}

1 Ответ

0 голосов
/ 01 марта 2020

Используйте error шаг , чтобы вывести сообщение и прервать конвейер. Это помечает текущую стадию так же, как весь конвейер как неисправный (при условии, что catchError или try/catch на более высоком уровне отсутствует).

Вам не нужно устанавливать currentBuild.result вручную.

else {
    resultStatus = 'Invalid'
    error "The patch number size doesnt meet the recommended size 8 - Status: $resultStatus"
    // No further code will be executed after 'error'!
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...