web-dev-qa-db-ja.com

Jenkins Gitプラグイン:リポジトリへの接続に失敗し、ステータスコード128が返されました

リモートGitHubエンタープライズリポジトリのクローンを作成しようとしていますが、リモートリポジトリのURLをJenkins構成の Gitプラグイン に追加すると、次のエラーが発生します。

hudson.plugins.git.GitException: Command "/usr/bin/git -c askpass=true fetch --tags --progress https://github.com/myUsername/myProject.git  refs/heads/*:refs/remotes/Origin/*" returned status code 128: stdout: stderr: fatal: unable to access https://github.myOrg.com/myUsername/myProject.git/': Failed to connect to github.com port 443: Operation timed out    at... 

構成の詳細と私が試したもの:

  • Jenkins URLはデフォルトで http:// localhost:8080 / です(警告を取得:「localhostではなく有効なホスト名を設定してください」)
  • リストされているすべての依存関係が Gitプラグイン に対してインストールされています
  • 組織のリモートリポジトリに承認用のgit資格情報を追加しました
  • 個人(非企業gitアカウント)の資格情報とリポジトリをプラグインに追加して同じ結果を得ようとしました
  • 「Git実行可能ファイルへのパス」を「git」と「/ usr/bin/git」の両方に設定しました
  • コマンドラインとブラウザの両方でGitに接続できます

質問:

  • Jenkinsがリモートリポジトリを使用/複製するためだけに認証(sshキー)を提供することになっていますか?
  • JenkinsがデフォルトのURLから出ると警告を出すのはなぜですか?これは、Jenkinsをローカルマシン以外の場所に「置く」必要があるということですか?

私は数日間これをトラブルシューティングしており、この時点で私の問題が何であるか確信が持てません!助けてください!!

8
ebbfl0
  1. 最初の質問について-正しいsshキーを適切なリポジトリに関連付ける必要があります。 /var/lib/jenkins/.ssh/configファイルで行うことができます-詳細 説明はこちら これは、複数のgit reposをサポートするという点でより堅牢なソリューションですOR追加するだけですsshキーを/.sshフォルダに修正しますトラブルシューティングのために、ジェンキンスボックス内のジェンキンスユーザーの下でクローンgithubリポジトリを実行してみてください。

  2. 2番目の質問について。 jenkinsのネットワーク設定を次に示しますが、警告メッセージはありません:/etc/hosts127.0.0.1 localhost localhost.localdomain/etc/sysconfig/networkHOSTNAME=localhost.localdomain。ホスト名とローカルホストもjenkinsサーバー内で解決する必要があります。

5
Dmitry Savinkov

少し奇妙ですが、gitlab.comを使用している場合、Jenkinsからプロジェクトを複製するために使用されたgitlabアカウントを使用してWebサイト(gitlab.com)にログインすると、エラーは消えたようです。

1
gersonZaragocin

問題は解決されました。手順に従ってください こちら 新しいkeygenの場合。端末にjenkins $(Sudo -i -u jenkins)としてログインします。最終的に、新しく生成されたキーを/Users/Shared/Jenkins/.ssh/id_rsaに追加することができました(他のsshキーがMacの/Users/me/.sshにどのように保存されているかを再現しようとしていました)。

  • また、上記のSSHキーフォルダーのアクセス許可レベルを制限して、エラーを回避し、ssh -T ..で認証し、git-> account settings-> ssh key(特にjenkins用)に追加する必要がありました。

  • その後、Jenkins/configureにアクセスして、新しい秘密キーの場所をCVSに追加しました。私のプロジェクトでは、「Jenkins master〜/ .sshから」ラジオボタンを選択して、資格情報(SSHユーザー名と秘密キー)を追加する必要がありました。

1
ebbfl0