TeamCity agent error “failed to perform checkout on agent”

纵然是瞬间 提交于 2020-01-22 11:19:06

问题


I am running my TeamCity 7 server and agent on MacOS. My repo is on github. I use ssh and I know that the authentication is correctly configured, because the test is successful.

The build works fine when I use VCS Checkout Mode "Automatically on server", however when I use VCS Checkout mode "Automatically on agent" I get this error.

[13:40:35][Updating sources] Failed to perform checkout on agent: '/usr/bin/git fetch --progress origin +refs/heads/master:refs/remotes/origin/master' command failed.
stderr: java.io.IOException: Authentication failed
    at org.jetbrains.git4idea.ssh.SSHMain.authenticate(SSHMain.java:275)
    at org.jetbrains.git4idea.ssh.SSHMain.start(SSHMain.java:159)
    at org.jetbrains.git4idea.ssh.SSHMain.main(SSHMain.java:139)
fatal: The remote end hung up unexpectedly

What am I missing?


回答1:


Try adding teamcity.git.use.native.ssh=true as a config parameter into your build configuration.

It is what helped me solve a similar problem. I learned this trick from here.




回答2:


What was not at all obvious to me is that the Default Private Key on the server is copied to the agent and used there. I tried first in vain to add the private key to the user the agent was running as (obviously on the agent machine). But then I added the private key to the user that was running TeamCity on the server machine, and then the Agent Side checkout started working.

I also used the teamcity.git.use.native.ssh=true property, but I don't think it helped with this particular problem.

The only trace of this information was in this comment.



来源:https://stackoverflow.com/questions/10841059/teamcity-agent-error-failed-to-perform-checkout-on-agent

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!