KDE4.DE

KDE4 Info Blog. Zusätzlich werden viele weitere Linux Themen behandelt

Sonar + SVN + Kerberos – svn: E170001: Negotiate

Erstmal möchte ich mich nun nach längerer, gesundheitsbedingter Pause, mal wieder melden, doch leider fehlte bisher das richtige Thema, nun habe ich eins :-).

Die Herausforderung bestand darin einen SonarQube Server ans laufen zu bekommen, der bestehende Projekte zu gefüttert bekommt. Dazu verwende ich den Kollegen Jenkins und entsprechend den SonarQube-Scanner. Das Subversion Repository was verwendet wird ist via Kerberos geschützt und greift im Hintergrund zur Authentifizierung auf ein Windows ActiveDirectory zu.

Ich habe im SonarQube das SCM SVN Plugin installiert  und entsprechend mit credentials ausgestattet habe aber permanent folgenden Fehler bekommen

java.lang.IllegalStateException: Error when executing blame for file
....
Caused by: org.tmatesoft.svn.core.SVNAuthenticationException: svn: E170001: Negotiate authentication failed: 'No valid credentials provided'

Abhilfe schaffte dann im Jenkins selbst den Sonar-Scanner Task beim Parameter 
JVM Options = -Dsvnkit.http.methods=Basic,Digest,Negotiate,NTLM 

Auszustatten, denn von Hause aus braucht das SvnKit welches im Sonar Plugin verwendet wird die Basic Authentication, so teilen wir der JVM mit, dass für SVN Kit auch Negotiate zugelassen ist, dann klappt es auch mit der Authentifizierung.