CruiseControl.rb Доступ к SVN запрещен

Asked
Viewd841

1

У меня возникла проблема, когда я смог без проблем добавить проект в CC.rb, но когда я запускаю службу, я получаю сообщение «Доступ запрещен» каждый раз, когда она проверяет наличие новой версии в Subversion.

Я использую --trace и выполняю точную команду, которую он пытается выполнить, из рабочего каталога проекта:

 svn --non-interactive log --limit 1 --revision HEAD:1 --verbose --xml
 

приводит к получению ожидаемого ответа.

Может ли кто-нибудь указать мне правильное направление?

Обновить

Перешел на http, поскольку https кажется источником большой головной боли, но это не помогло.

Я также взломал источник, чтобы передать мое имя пользователя и пароль с помощью указанной выше команды, и это тоже не помогло.

3 ответов

0

Если вы используете последнюю версию CruiseControl.rb, взятую из репозитория git, это должно решить вашу проблему (по крайней мере, для меня).

Команда git:

git clone git: //rubyforge.org/cruisecontrolrb.git

Возможно, вам потребуется установить git, если вы работаете в Windows. Вы можете получить msysgit здесь: http://code.google.com/p/msysgit/ загрузки / список

Надеюсь, это поможет.

  • Спасибо, я попробую, когда представится возможность.

    Garry Shutler23 февраля 2009, 22:51
0

Я давно не работал с CruiseControl.rb, но я помню, что он использовал общие учетные данные, хранящиеся на машине, для аутентификации / доступа к репозиториям SVN. Это было хорошо, поскольку их не нужно было вводить каждый раз, но вызывало много головной боли, когда один из разработчиков (или какой-либо другой процесс) подключался к репозиторию SVN с этой машины, используя учетные данные, отличные от тех, которые ожидал CruiseControl. Вы можете что проверить, происходит ли это / произошло ли это. Я считаю, что это могло быть исправлено в последней версии или, по крайней мере, находится в очереди в качестве исправления функции / ошибки.

1

Если вы используете SSL, убедитесь, что учетная запись пользователя, на которой запущен скрипт, имеет разрешение кэшированного сертификата для SSL.

Это касается cruisecontrol.net, службы, которая запускается в Windows от имени конкретного пользователя. Возможно, вам потребуется выяснить правила олицетворения для ruby.exe, чтобы определить, работает ли он как сетевая служба или вы можете запустить его от имени себя.

Вот ссылка на то, как заставить cc.rb работать как службу Windows и вести себя как cc.net, хотя и легче. Извините, неправильная ссылка на самом деле находится на nabble , и вам понадобится cygwin.

  • I’ve moved to http but unfortunately that hasn’t helped. I’ll look at getting it to run as a service. Upvote for taking the time to help.

    Garry Shutler13 февраля 2009, 08:51
  • CruiseControl.net - совсем другое дело, поскольку это фактически установленная служба в Windows с опросом, который олицетворяет учетную запись пользователя через конфигурацию служб.

    DevelopingChris12 февраля 2009, 18:04
  • see updates, I think you are running into ruby.exe, running on a system account without the cert cache, and you need it to impersonate you.

    DevelopingChris12 февраля 2009, 18:03
  • I am running the command manually and also the command to kick off the server. I followed these instructions http://elegantcode.com/2009/02/10/getting-cruisecontrolnet-working-with-svn-over-https/ to try and make sure all users have a version of the certificate but that didn’t help either.

    Garry Shutler12 февраля 2009, 17:33