私はGitリポジトリをネットワーク上の共有フォルダからgitoliteを実行するSSHサーバに移動しました。 TeamCityの公開鍵/秘密鍵を追加し、VCSルートを指し示しました。これはすべてテスト接続で成功し、ビルド構成には保留中の変更が表示されます。しかしTeamCityがSSH Gitリポジトリから変更をフェッチするときにタイムアウト例外を解決する方法
、チームシティーは、私は次のエラーを取得するこれらの保留中の変更フェッチしようとします。
'git fetch' command failed.
exception: Timeout exception
は、私はそれが90秒後にタイムアウトしていることがわかりログを冗長にするために切り替える - それがあろうと、私は、通常の状況下で期待をこれらの変更をフェッチするのに数秒かかることがあります。
問題のトラブルシューティングを開始して以来、VCSルートを「デフォルトのプライベートキー」に変更し、必要な.sshフォルダにconfig、id_rsa、およびknown_hostsファイルを追加しました。これらのファイルに必要なものを入れるまで、指紋とパスワードメッセージがログに記録されていました。私のサーバーは、VCSルートにキーを指定したときと同じように、タイムアウト例外を再度返します。
コマンドラインからGitを実行すると、上記のように.sshフォルダが設定されていると、プロンプトなしでリポジトリを複製できます。これは、TCがデフォルトのSYSTEMアカウントの下でサービスとして実行されているのとは別のユーザーアカウントからのものですが、私が言ったように、TCが.sshフォルダの変更をピックアップしたアカウント。
何が間違っている可能性がありますか?
私は(デフォルトで)サーバは、チェックアウトをして、送信されたと思いましたビルドエージェントへのソース。それは間違っていますか? – GraemeF
@GraemeF - 「VCSチェックアウトモード」を確認できますか?私の更新された答えを見てください。 – manojlds
デフォルトでは、すでに「自動的にサーバー上に」設定されています。 – GraemeF