Jenkins作业失败从curl获得非200响应

Jenkins作业失败从curl获得非200响应,curl,jenkins,Curl,Jenkins,我有一个Jenkins作业,它执行curl命令来发布到url。curl命令如下所示 curl -u user:pass -F file=@filetobeposted.zip -F install=true -v http://myserverurlhere.com:2222/service.jsp 该命令返回XML,结果如下 </log> </data> <status code="200">ok</status> </r

我有一个Jenkins作业,它执行curl命令来发布到url。curl命令如下所示

curl -u user:pass -F file=@filetobeposted.zip -F install=true -v http://myserverurlhere.com:2222/service.jsp
该命令返回XML,结果如下

    </log>
  </data>
  <status code="200">ok</status>
</response>

好啊
如果curl命令失败(应该如此),Jenkins将被标记为失败。但是,如果curl命令返回有效的XML,即使它可能返回非200代码,jenkins作业也不会被标记为失败


如何让Jenkins查看XML中的结果以确定通过/失败?

Jenkins仅在接收到非零退出代码时才在步骤/作业上标记失败,并且对HTTP状态代码没有任何可见性/考虑因素。 看起来您需要创建一个自定义步骤/脚本来解析xml文件,进行必要的检查,并在给定结果的情况下返回0或1。 不确定您选择的语言是什么,但即使使用基本的bash也应该很容易实现——只要在满足失败条件时退出1即可