1

私はopenshiftにジェンキンスを持っています。私はフォローすることができ、それは機能します。

[jenkins-<USER>.rhcloud.com data]\> ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i /var/lib/openshift/<NUMBERED DIRECTORY>/app-root/data/.ssh/jenkins_id_rsa git@github.com
Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts.
PTY allocation request failed on channel 0
Hi <USER>! You've successfully authenticated, but GitHub does not provide shell access.
          Connection to github.com closed.

だからそれはgithubに接続します...私がそれをクローンしたとしてもシェルから動作しました。

しかし、jenkinsジョブにリポジトリを追加しようとすると、次のエラーが発生します。そのプライベートリポジトリ。

Failed to connect to repository : Command "git ls-remote -h git@github.com:<USER>/test.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly
4

1 に答える 1

1

Jenkins はおそらく as で実行されており、ビルド ステップにコマンドを追加することでこれを確認し、ユーザーがシェルのユーザーと異なることを確認できるためjenkins、ホスト キーを受け入れました。<USER>whoamijenkins

1 つの解決策は、としてログインしてjenkins、github のキーを受け入れることです。

もう 1 つは、github の ~/.ssh/known_hosts から行をコピーし、それを jenkins フォルダー ~jenkins/.ssh/known_hosts の known_hosts にコピーすることです。

于 2013-03-14T15:38:03.477 に答える