【发布时间】:2018-02-13 05:01:35
【问题描述】:
在 Jenkins 中,我使用 XML API 来获取提交的 SHA,例如
http://jenkins/view/job/test/470/api/xml?xpath=//lastBuiltRevision/SHA1&wrapper=SHAS
我将它放在一个包装器中,因为它通常包含多个 SHA,我将进一步处理这些。
但是其中一个 SHA 始终无效...
<SHAS>
<SHA1>cbf26ebac6b4b3860a794c0b1ad86758e7757a3a</SHA1>
<SHA1>7e861132ce428911585a818107ba35c44cf12bbf</SHA1>
</SHAS>
第二个 SHA 很好,但是当我在我们的 GIT 存储库提交中检查第一个 SHA 时,它会导致一个错误页面:
提交 'cbf26ebac6b4b3860a794c0b1ad86758e7757a3a' 不存在于 存储库“测试”。
有谁知道为什么我们在 Jenkins 上得到无效的 SHA 以及如何解决这个问题?
更新:
完整的 lastBuiltRevision ...
<wrapped>
<lastBuiltRevision>
<SHA1>cbf26ebac6b4b3860a794c0b1ad86758e7757a3a</SHA1>
<branch>
<SHA1>cbf26ebac6b4b3860a794c0b1ad86758e7757a3a</SHA1>
<name>origin/master</name>
</branch>
</lastBuiltRevision>
<lastBuiltRevision>
<SHA1>7e861132ce428911585a818107ba35c44cf12bbf</SHA1>
<branch>
<SHA1>7e861132ce428911585a818107ba35c44cf12bbf</SHA1>
<name>refs/remotes/origin/develop</name>
</branch>
</lastBuiltRevision>
</wrapped>
【问题讨论】:
-
您能否添加该作业的完整
lastBuiltRevisionXML 元素?测试回购包含什么?您对 repo 执行了哪些具体步骤?你用什么版本?也许该修订不是从远程仓库中获取的? -
@StefanHanke 我用 lastBuiltRevision 更新了问题。
-
为什么有两个
lastBuiltRevision元素?该工作的 git SCM 配置是什么?我没有设法重现这一点。看起来还有关于那个元素的no specific issue...
标签: git jenkins continuous-integration git-commit sha