У меня сейчас проблема.Я работаю с openshift и пытаюсь использовать оператор if в зависимости от того, успешно ли прошел интеграционный тест в отдельном контейнере.Это фрагмент моего кода
podTemplate(....
){
node(myLabel){
container('jnlp'){
...
stage(Integration Tests){
...
script{
def status = sh(script: 'oc describe pod myapps-integration-tests | grep -i status: | awk {\'print $2\'}', returnStdout: true)
echo "Status of Interation Test Job ${status}"
echo status
if("${status}" == "Succeeded"){
echo "Integration tests successfull"
} else {
echo "Integration Tests failed"
error("The integration tests failed.")
}
}
...
}
Теперь проблема в том, что оператор if всегда всегда возвращает false.Эхо-статус отображается как Успешный, но оператор все еще возвращает ложь.Я пробовал с и без блока сценария.Я пытался
if(status == "Succeeded")
но все же.Это всегда говорит мне, что мой тест на интеграцию не удался.Если я заменю утверждение на «Succeeded» == «Succeeded» только для тестирования, оно проходит, как и ожидалось.У кого-нибудь есть идеи, что я делаю не так?