1

我在为构建自动化设置 jenkins 时遇到问题,我们使用源代码控制主机 codebasehq 和 mercurial,但是它无法从存储库中提取。

该插件似乎与提供的凭据连接良好(目前我们只是使用 in http url 凭据),但随后出现以下错误:

Building in workspace /home/ubuntu/jenkins/jobs/testJob/workspace 
$ hg clone --rev tip --noupdate https://foo:bar@initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace
abort: partial pull cannot be done because other repository doesn't support changegroupsubset.

我尝试在错误消息中运行该命令,但它只是返回相同的中止消息。

我对 mercurial 的经验有限,而且 google 似乎没有在错误消息上返回太多,这让我认为这可能是 jenkins 插件或 codebasehq 的 mercurial 设置的问题。

有关错误的任何信息,或者是否有人有在 codebasehq 上成功设置此类事情的经验并且可以分享任何建议,那将是非常棒的。

4

1 回答 1

1

在 codebasehq 支持团队做出回应后,“changegroupsubset”似乎是指其 mercurial 存储库的 https 版本不支持的功能。然而,他们的存储库的 ssh 版本支持它,所以我可以通过简单地替换来解决这个问题

hg clone --rev tip --noupdate https://foo:bar@initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace

hg clone --rev tip --noupdate ssh://foo:bar@initech.codebasehq.com/foo/bar.hg /home/ubuntu/jenkins/jobs/testJob/workspace

这很成功。

于 2012-11-07T08:46:51.857 回答