grigoryvp
grigoryvp

Reputation: 42483

How to correctly configure SVN for hudson (jenkins) continous integration system?

I'm configuring a jenkins to build my XCode project on MacOS 10.6.6. For this purpose i have installed latest tomcat container and latest jenkins as ROOT.war. All works fine except adding subversion integration :(. After creating a new project in jenkins i selected "subversion" in "Source Code Management" and entered my repository URL same way i use in command-line subversion tool:

https://svn.mydomain.local/main/project/trunk

Unfortunately, it is not working with a strange error "authentication cancelled": enter image description here

The 'details' log looks like this:

Unable to access https://svn.mydomain.local/main/project/trunk : svn: authentication cancelled 
org.tmatesoft.svn.core.SVNCancelException: svn: authentication cancelled
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:37)
    at org.tmatesoft.svn.core.internal.wc.SVNErrorManager.cancel(SVNErrorManager.java:32)
    at org.tmatesoft.svn.core.internal.wc.DefaultSVNAuthenticationManager.getNextAuthentication(DefaultSVNAuthenticationManager.java:257)
    at hudson.scm.FilterSVNAuthenticationManager.getNextAuthentication(FilterSVNAuthenticationManager.java:39)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:552)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:275)
    at org.tmatesoft.svn.core.internal.io.dav.http.HTTPConnection.request(HTTPConnection.java:263)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.exchangeCapabilities(DAVConnection.java:516)
    at org.tmatesoft.svn.core.internal.io.dav.DAVConnection.open(DAVConnection.java:98)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.openConnection(DAVRepository.java:1001)
    at org.tmatesoft.svn.core.internal.io.dav.DAVRepository.testConnection(DAVRepository.java:97)
    at hudson.scm.SubversionSCM$DescriptorImpl.checkRepositoryPath(SubversionSCM.java:1842)

The most strange thing: if i click "enter credentials" and enter my login and password, Jenkins reports back "Authentication was successful. Information is stored in Hudson now." but it's still red "unable to access" and checkout error on build :(.

Command-line svn co works fine for both user and root accounts with all credentials cached. Maybe anyone who has a hudson on macos experience can drop a few hints what to do?

Upvotes: 4

Views: 24158

Answers (4)

Jcs
Jcs

Reputation: 13709

I found a blog (blog.vinodsingh) entry posted by someone who faced a very similar issue. He just removed the .subversion directory and it solved the problem.

Upvotes: 0

Jegadeeshkumar
Jegadeeshkumar

Reputation: 11

In Hudson configuration -> Manage Plugins -> Advanced Tab -> Make sure your HTTP Proxy configurations are properly set.

Upvotes: 1

ıɾuǝʞ
ıɾuǝʞ

Reputation: 2849

We have the same issue on only one job, but not when configuring the job, when a post-commit script try to trigger a build :

27 oct. 2011 17:57:45 hudson.scm.SubversionRepositoryStatus doNotifyCommit
WARN: Failed to handle Subversion commit notification
org.tmatesoft.svn.core.SVNCancelException: svn: authentication cancelled
[...]

Inspecting the job configuration reveals that the "Included regions" parameters wasn't set correctly : trunk/src/dir

Corrected this params with : /trunk/src/dir

makes jenkins no more having the issue

Upvotes: 0

Jens Theeß
Jens Theeß

Reputation: 580

Just to check the basic setup, does the user running tomcat/jenkins have write access to the .hudson directory and below, specifically to hudson.scm.SubversionSCM.xml?

Additionally, someone else had success with setting -Dsvnkit.http.methods=Basic,NTLM in the JAVA_ARGS.

Upvotes: 4

Related Questions