У нас есть установка трубопровода Дженкинса.Мы используем команду "set -o pipefail" со следующим curl и добавляем статус http в файл, используя команду tee, и, наконец, мы проверяем состояние ответа HTTP, используя команду grep
. Иногда она работает нормально, и задание jenkinsУспешно. Иногда может произойти сбой из-за загрузки сервера / неправильного ответа, поэтому мы также добавили команду повтора.
Порядок выполнения:
- set -o pipefile
- команда curl
- tee команда
- команда grep
Проблема заключается в том, что при повторном выполнении с использованием повторных попыток выполнение выполняется не по порядку и происходит сбой при выходе из сценария со статусом 1
во второй раз после выполнения повторной попытки * groovy
- set -o pipefile
- tee команда
- grep команда
- команда 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
Ожидается:
- set -o pipefile
- команда curl
- команда tee
- команда grep
Actual
- set -o pipefile
- tee команда
- команда grep
- команда Curl
Скрипт вернул код выхода 1