Как исправить выполнение команды set -o pipefail с помощью скрипта jenkins groovy - PullRequest
0 голосов
/ 25 июня 2019

У нас есть установка трубопровода Дженкинса.Мы используем команду "set -o pipefail" со следующим curl и добавляем статус http в файл, используя команду tee, и, наконец, мы проверяем состояние ответа HTTP, используя команду grep

. Иногда она работает нормально, и задание jenkinsУспешно. Иногда может произойти сбой из-за загрузки сервера / неправильного ответа, поэтому мы также добавили команду повтора.

Порядок выполнения:

  1. set -o pipefile
  2. команда curl
  3. tee команда
  4. команда grep

Проблема заключается в том, что при повторном выполнении с использованием повторных попыток выполнение выполняется не по порядку и происходит сбой при выходе из сценария со статусом 1

во второй раз после выполнения повторной попытки * groovy

  1. set -o pipefile
  2. tee команда
  3. grep команда
  4. команда curl

Запрос, почему выполнение не в порядке?Например: команда


retry (2) set -o pipefail curl --silent --write-out 'HTTP'% {http_code} --output output.html --user * -пароль * data = abc url = xyz.com |tee -a httpstatus.log |grep HTTP20

Ожидается:


  1. set -o pipefile
  2. команда curl
  3. команда tee
  4. команда grep

Actual


  1. set -o pipefile
  2. tee команда
  3. команда grep
  4. команда Curl

Скрипт вернул код выхода 1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...