Как правильно настроить SVN для системы непрерывной интеграции Hudson (Jenkins)? - PullRequest
4 голосов
/ 14 марта 2011

Я настраиваю jenkins для сборки своего проекта XCode на MacOS 10.6.6. Для этой цели я установил последний контейнер Tomcat и новейшие jenkins как ROOT.war. Все работает отлично, за исключением добавления интеграции Subversion :(. После создания нового проекта в jenkins я выбрал «subversion» в «Управление исходным кодом» и ввел URL своего хранилища таким же образом, как я использую в инструменте Subversion командной строки:

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

К сожалению, он не работает со странной ошибкой «аутентификация отменена»: enter image description here

Журнал «Детали» выглядит следующим образом:

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)

Самое странное: если я нажму «ввести учетные данные» и введу свой логин и пароль, Дженкинс ответит: «Аутентификация прошла успешно. Теперь информация хранится в Гудзоне». но он по-прежнему красный "невозможно получить доступ" и ошибка извлечения при сборке: (.

Командная строка svn co отлично работает как для учетных записей пользователей, так и для пользователей root со всеми кэшированными учетными данными. Может быть, любой, у кого есть опыт работы с hudson на macos, может дать несколько советов, что делать?

Ответы [ 4 ]

4 голосов
/ 18 марта 2011

Просто чтобы проверить базовые настройки, имеет ли пользователь, запускающий tomcat / jenkins, доступ на запись в каталог .hudson и ниже, в частности в hudson.scm.SubversionSCM.xml?

Кроме того, кто-то еще успешно установил -Dsvnkit.http.methods=Basic,NTLM в JAVA_ARGS.

1 голос
/ 30 июня 2012

В конфигурации Hudson -> Управление плагинами -> Вкладка «Дополнительно» -> Убедитесь, что настройки HTTP-прокси установлены правильно.

0 голосов
/ 27 октября 2011

У нас такая же проблема только на одном задании, но не при настройке задания, когда скрипт после фиксации пытается запустить сборку:

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
[...]

Проверка конфигурации задания показывает, что параметры «Включенные регионы» были установлены неправильно: Ствол / SRC / реж

Исправлены эти параметры с помощью: / Багажник / SRC / реж

у Дженкинса больше нет проблемы

0 голосов
/ 14 марта 2011

Я нашел запись в блоге ( blog.vinodsingh ), опубликованную кем-то, кто столкнулся с очень похожей проблемой. Он просто удалил каталог .subversion, и это решило проблему.

...