1

我将 SVN 项目作为子存储库添加到我的 Mercurial 项目(按照说明),现在 TeamCity 无法构建 Mercurial 项目。我收到以下错误:

[Updating sources] Failed to build patch for build #???, VCS root: "mercurial: https://myrepo" {instance id=41, parent internal id=22, parent id=mercurial_repo_id, description: "mercurial: https://myrepo"}, due to error: Cannot build patch: ClientAbortException:  java.io.IOException

[Updating sources] Problem while loading patch data stream: Failed to obtain stream from server. Server status: 504 (Gateway Time-out)

Problem while loading patch data stream: Failed to obtain stream from server. Server status: 504 (Gateway Time-out)

java.io.IOException: Failed to obtain stream from server. Server status: 504 (Gateway Time-out)

当我在本地克隆存储库时,一切正常,但 TeamCity 没有看到子存储库,并且更改图中没有子存储库。我尝试添加不同的构建步骤,但没有帮助。我还尝试将 TeamCity 中的 VCS 结帐模式更改为代理结帐,但由于自签名证书而出现另一个错误:

Failed to perform checkout on agent: 'hg --config ui.interactive=False clone -U --uncompressed https://...' command failed.
stderr: abort: could not find web.cacerts: /etc/ssl/ca-bundle.pem

但是,结帐模式不应成为错误的原因,因为该问题已在 TeamCity 8 版本(我们使用 8.0.6)中得到解决。

我应该如何配置 TeamCity 以在 Mercurial 存储库中使用 SVN 子存储库?

谢谢。

升级版:

我终于找到了答案:虽然我需要在代理上执行结帐时修复错误(添加证书或强制它信任所有)并且问题解决了!

4

1 回答 1

1

我没有使用 SVN 子存储库完成此操作,但我使用 hg 子存储库完成了此操作,但诀窍是需要将 teamcity 服务器的 hgrc 文件配置为静默获取 SVN 存储库,因此您可能需要提供身份验证信息,也许还需要信任证书在 hgrc 文件中。

于 2015-07-21T18:41:04.710 回答