【发布时间】:2019-10-23 05:53:55
【问题描述】:
我有我的 ANT 文件,它使用 exec 任务使用 cURL 创建 Jenkins 作业。无论exec任务是成功还是失败,jenkins构建都会成功。所以我尝试在 exec 中使用 resultproperty 并尝试打印结果,但它只返回 0。
<exec executable="curl" resultproperty="MyExecResult" failonerror="false">
<arg value="-k" />
<arg value="-X" />
<arg value="GET" />
<arg value="<MyJenkinsURL>config.xml" />
<arg value="-o" />
<arg value="<MyPath>\GET\config.xml" />
<arg value="-u" />
<arg value=":" />
<arg value="--ntlm" />
</exec>
<echo>MyExecResult-GET ::: ${MyExecResult}</echo>
如何在这种情况下打印 resultproperty 值以获取错误代码。请提供输入。谢谢!
【问题讨论】:
-
如果
resultproperty返回 0,这意味着您的exec没有失败。我不确定你想在这里做什么。当exec失败时,您是否希望您的构建失败?如果是,设置failonerror="false"。 -
我想在 exec 失败时使构建失败,即使在设置 failonerror="true" 后它对我也不起作用。这就是为什么我试图获取错误代码,但无法得到它。
-
听起来你的 curl 命令并没有失败。你能发布你得到的控制台输出吗?
-
我在执行 cURL 时没有遇到问题。尽管
任务失败,但我得到了以下任务,就像它成功一样:% Total % Received % Xferd Average Speed Time Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--: -- --:--:-- --:--:-- 0 100 381 100 381 0 0 381 0 0:00:01 --:--:-- 0:00:01 6047 100 11816 0 11816 0 0 11816 0 --:--:-- --:--:-- --:--:-- 11816 200 -
我还是一头雾水。我没有看到任何失败的证据。问题是下载的 config.xml 的内容不是你所期望的吗? (即 curl 写入 config.xml 但它只是内部的授权失败消息?)
标签: http jenkins curl ant exec