私はJenkinsとImの初心者ですが、my.NETプロジェクトでいくつかの単体テストを実行できるようにしようとしています。
ビルドを実行すると、gitリポジトリからフェッチしようとするとハングします。
エラー:10分後にタイムアウト
C:\ Program Files\Git\cmd\git.exe config --local --remove-section credential#timeout = 10 ERROR:Error fetching remote repo 'Origin' hudson.plugins.git.GitException:Failed to fetch from- https://github.com/name.of.repo
https://wiki.jenkins-ci.org/display/のjenkinsの指示に従って、既知のホストを生成し、.sshディレクトリをC:\ Windows\SysWOW64\config\systemprofile.sshにコピーしましたJENKINS/Git + Plugin 「Jenkins、GITプラグイン、Windows」の下
私はcmd行からssh [email protected]を実行し、認証に成功しました。
何かアイデアはありますか?
ありがとう:)
これはおそらくファイアウォールの問題です。 SSH(ポート22)を使用してGithubに認証できるため、そのルートが機能します。しかし、あなたの仕事はタイムアウトになる https://github.com (ポート443)経由でgithubにアクセスしようとしています。リポジトリのURLを[email protected]:account/repository.git
に変更して、ssh経由でgithubにアクセスしてみてください(このURLは、リポジトリのメインページのドロップダウン[Choose a clone URL]、オプション[SSH]にあります。
OPと同じ問題がありました。 SSH認証情報はJenkinsに保存され、同じリポジトリにアクセスする他の多くのノードで機能します。 Jenkinsユーザーとしてマシンにsshしてgit clone
Jenkinsジョブと同じSSHリポジトリURLを使用してリポジトリで([email protected]:account/repo.git
)。
回避策として、今のところJenkinsジョブのgit認証情報をnone
に設定しました。ローカルに保存されている資格情報を使用できると思います。
それは現在働いています。
SSHを使用するより簡単な方法は、git
コマンドを実行する前にこのスニペットを追加することです。
echo "https://${GITHUB_USER}:${GITHUB_TOKEN}@github.intuit.com" >> /tmp/gitcredfile
git config --global credential.helper "store --file=/tmp/gitcredfile"
ユーザー名とパスワードではなくSSHを使用してリモートGitリポジトリにアクセスする前に、クローンとフェッチのタイムアウト設定に注意する必要があります。
インターネット接続が不良で、リモートリポジトリのサイズが大きいと、クローンのタイムアウトが発生します。
プロジェクト設定に移動します:_Source Code Management
_-> _Additional Behaviours
_-> _Advanced clone behaviours
_-> Timeout (In Minutes) for clone and fetch operations
-> 10分以上。
インターネット接続が悪いか、リモートリポジトリのサイズが大きいかどうかに関係なく、gitクローンが長時間スタックするという同じ問題が引き続き発生する場合は、ユーザー名&の代わりにSSHを使用してリモートGitリポジトリにアクセスしてみてください。パスワード。