Я прихожу сюда годами и обычно нахожу ответ, который ищу, но на этот раз у меня довольно специфический вопрос.
Я строю конвейер, который проходит через набор шагов в одном конвейере с 3-х уровневым путем к prod, используя выбор, пару строк и параметр withCredentials.Который работает нормально, до тех пор, пока мой продукт не развернется, где он не пройдет тест «если еще».
У меня есть (секретный текст) учетные данные jenkins с базовым паролем, которые я пытаюсь сравнить со строкой, введенной при запуске сборки.Я проверил заклинание с базовым использованием, и оно работает как положено.НО, когда я добавляю это к моему полному конвейеру, это терпит неудачу.
Я думаю, это из-за того, что я не использовал правильный синтаксис с шагами, сценарием, узлом или порядком ...?Это новое пространство для меня, и я надеюсь, что тот, кто провел больше времени в этом кодовом пространстве, увидит мою ошибку.Спасибо!Заранее!
Сбои:
...
stage('Deploy_PROD') {
when {
expression { params.DEPLOY_TO == 'Deploy_PROD'}
}
steps{
withCredentials([string(credentialsId: '${creds}', variable: 'SECRET')]) {
script {
if ('${password}' == '$SECRET') {
sh 'echo yes'
} else {
sh 'echo no'
}
}
}
}
}
Работы:
stage('example')
node {
withCredentials([string(credentialsId: '${creds}', variable: 'SECRET')]) {
if ('${password}' == '$SECRET') {
sh 'echo "test"'
} else {
sh 'echo ${password}'
}
}
}