我将 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 子存储库?
谢谢。
升级版:
我终于找到了答案:虽然我需要在代理上执行结帐时修复错误(添加证书或强制它信任所有)并且问题解决了!