如何通过Jenkins Groovy脚本修复'set -o pipefail'命令执行

时间:2019-06-25 13:11:44

标签: bash jenkins groovy

我们有jenkins管道设置。我们使用带有以下curl的命令“ set -o pipefail”,并使用tee命令将http状态附加到文件中,最后使用grep命令检查HTTP响应的状态

有时可以正常工作并且jenkins工作成功。有时可能由于服务器负载/响应错误而失败,因此我们还添加了retry命令。

执行顺序:

  1. 设置-o pipefile
  2. curl命令
  3. tee命令
  4. grep命令

问题是使用重试第二次执行时,执行不按顺序执行,并且由于状态为1的脚本退出而失败

常规重试后第二次执行

  1. 设置-o pipefile
  2. tee命令
  3. grep命令
  4. 卷曲命令

查询是为什么执行顺序不正确? 例如:命令


重试(2) 设置-o pipefail curl --silent --write-out'HTTP'%{http_code} --output output.html --user * --password * data = abc url = xyz.com | tee -a httpstatus.log | grep HTTP20

预期:


  1. 设置-o pipefile
  2. curl命令
  3. tee命令
  4. grep命令

实际


  1. 设置-o pipefile
  2. tee命令
  3. grep命令
  4. 卷曲命令

脚本返回退出代码1

0 个答案:

没有答案