Стандартная переменная конвейера Jenkinsfile как целое число

#jenkins-pipeline

#Дженкинс-конвейер

Вопрос:

Я часто использую VAR = sh(returnStdout: true, script './script.sh').trim() синтаксис в декларативном Jenkinsfile , чтобы задать переменную, на которую я буду ссылаться позже в конвейере. Одна вещь, которую я не смог понять, заключается в том, как я могу преобразовать это в целое число, если я хочу написать больше / меньше условного?

Я пробовал

 VAR = sh(returnStdout: true, script './script.sh').trim().toInteger()
if (VAR > 1) {
  // do something
}
  

И это не работает. Как же так? Как правильно это сделать? Я также пытался разделить их и не передавать их сразу после .trim()

 VAR = sh(returnStdout: true, script './script.sh').trim()
VAR.toInteger()
if (VAR > 1) {
  // do something
}
  

И это тоже не работает. Как я могу добиться того, чтобы на sh выходе было целое число, которое можно использовать в операторе больше, чем условное выражение?

Комментарии:

1. Ваш первый вариант действительно работает для меня.

2. Интересно. Может быть, конкретная настройка или конфигурация или плагин? Не уверен, имеет ли это значение, но я использую версию Jenkins 2.249.1, и она находится в декларативном конвейере, однако это также не работает для меня в консоли сценариев.