Jenkins проверка входящих параметров на соответствие
Есть Jenkins job, в него передаётся string параметр phaseJobId и возвращается назад Stage. Параметр phaseJobId имеет валидные значения, которые обрабатываются в коде джобы (код приведён ниже) 'Prepare', 'Deploy', 'Start_Testing' Вопрос: Как сделать так, чтобы Job возвращал Fail при любом значении, отличном от валидного?
@Library('Xxx-pipeline-utils') _
pipeline {
agent any
parameters {
string(name: 'phaseJobId', defaultValue: "", description: "Stage name to be failed ('Prepare', 'Deploy', 'Start_Testing')")
string(name: 'stage', defaultValue: "", description: "Stage to return")
}
environment {
stageName = 'stage'
wfUrl='192.168.100.31:8080'
}
stages {
stage('Prepare'){
steps {
script {
if('Prepare'.equals(stage)) {
setXxxVarOnServer(wfUrl, phaseJobId, stageName, 'Deploy')
}
sleep(1)
}
}
}
stage ("Deploy"){
steps {
script {
if('Deploy'.equals(stage)) {
setXxxVarOnServer(wfUrl, phaseJobId, stageName, 'Start_Testing')
}
sleep(3)
}
}
}
stage ("Start_Testing"){
steps {
script {
if('Start_Testing'.equals(stage)) {
setXxxVarOnServer(wfUrl, phaseJobId, stageName, 'Prepare')
}
sleep(2)
}
}
}
}
}
Ответы (1 шт):
Автор решения: falm
→ Ссылка
Надо разобраться что такое валидное значение
А перевод джоба в FAILED в блеке script там где вам надо:
if (phaseJobId=="valid") {
currentBuild.result = 'FAILURE'
}