Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
658 views
in Technique[技术] by (71.8m points)

macos - 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?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

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.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...