2016-06-08 3 views
0

SSH를 사용하여 Gerrit 레포에서 가져올 Jenkins 빌드를 얻으려고했습니다. Gerrit에서 jenkinsbuild라는 사용자를 생성하고 사용자의 공개 키를 입력했습니다.Gerrit Code Reinw가 Jenkins의 ssh 자격 증명을 허용하지 않습니다.

저는 Git SCM 옵션을 사용하고 Credentials 플러그인을 사용하고 있습니다. 내 자격 증명을 위해 사용자 이름을 jenkinsbuild로 설정하고 개인 키를 직접 입력합니다 (키 파일을 가리키는 것이 아니라). SSH : //[email protected] : 29418/테스트/testgit

자격 증명 jenkinsbuild (젠킨스 자격 증명)

내 SCM 구성이

저장소 URL과 같은 빌드를 실행하면 GIT 레포에서 가져 오기 위해 끊깁니다. 10 분간 폴링하면 프로세스가 시간 초과됩니다. 나는/var에//를 리트 서버의 보안 로그를 쳐다 보면서 같은 오류를 보았다 : 그 문제를 디버깅하기 위해

Jun 8 11:06:25 xxxxx sshd[9887]: Invalid user jenkinsbuild from xx.xx.xxx.xxx 
Jun 8 11:06:25 xxxxx sshd[9887]: debug3: mm_answer_pwnamallow: sending MONITOR_ANS_PWNAM: 0 
Jun 8 11:06:25 xxxxx sshd[9887]: debug3: mm_request_send entering: type 8 
Jun 8 11:06:25 xxxxx sshd[9888]: input_userauth_request: invalid user jenkinsbuild 

을, 나는 jenkinsbuild로 젠킨스 서버에 로그온과의 자식 클론을하려고 노력 저장소. 그것은 작동했다 (약간의 땜질 후에). 왜 젠킨스가 아닌 서버에서 직접 복제 할 수 있는지 확신 할 수 없습니다.

누구든지이 문제를 어떻게 디버그 할 수 있는지에 대한 조언이 있습니까?

+0

Gerrit 서버에서 gerrit/log/error_log 및 gerrit/log/sshd_log 파일을 보았습니까? 모든 단서? –

+0

sshd_log 파일은 성공적인 로그인 만 로깅하는 것 같습니다. 빌드 (실패한 곳)에서이 작업을 시도하면 새로운 항목이 표시되지 않습니다. error_log에는 많은 오류가 기록되어 있지만 요청 시간에 해당하는 오류는 "[2016-06-08 15 : 14 : 02,673] 오류입니다. com.googlesource.gerrit.plugins.replication.ReplicationQueue : Can not xxxxx는 복제 : /opt/git/ttadd/qcegpos.git org.eclipse.jgit.errors.TransportException을 : xxxxx는 : /opt/git/ttadd/qcegpos.git : "알 수없는 bc751a060521b1b4e23795464a3fd398fbd09996 누락 – bsayegh

+0

음 ... 어쩌면 젠킨스 다음과 같은 사용자 응답을 기다리고 있습니다. 호스트 : 의 진 본성을 설정할 수 없습니다. RSA 키 지문은 SHA256 : 입니다. 계속 연결 하시겠습니까 (예/아니오)? –

답변

0

젠킨스 용 GIT 플러그인 (적어도 내가 사용중인 버전)이 암호문으로 ssh 키를 지원하지 않는다는 사실이 밝혀졌습니다. Passwords를 제공 할 수있는 Credentials Plugin을 사용하기 때문에 이상하게 보입니다.

JENKINS-20879

이 솔루션은 암호없이 SSH 키를 다시 생성하는 것이었다 포함, 그것을 위해 열린 버그의 많음이있다.

관련 문제