Невозможно выполнить коммит в svn, так как корневая папка запрещена - PullRequest
2 голосов
/ 10 октября 2011

Я пытаюсь выполнить команду post build svn commit в Jenkins.

У меня есть доступ к http://myrepo.com/myProject ..., но мне не нужно http://myrepo.com/ (доступ запрещен).В результате, когда я фиксирую, я получаю следующую ошибку:

svn commit --message "Build #xx" myfile --non-interactive

svn: Commit failed (details follow):

svn: OPTIONS of 'http://myrepo.com/myProject/myfile': authorization failed: Could not
authenticate to server: rejected Basic challenge (http://myrepo.com)

1 Ответ

4 голосов
/ 10 октября 2011

Когда вы запускаете svn из командной строки, у вас нет доступа к учетным данным, хранящимся в Jenkins.

Самый простой способ заставить svn работать из командной строки - предоставить параметры --username и --password для svn в вашем скрипте сборки.

Вы также можете запустить svn как пользователь Jenkins и позволить ему сохранять аутентификацию в домашнем каталоге пользователя Jenkins.Вы должны будете настроить аутентификацию самостоятельно на каждом узле, где вам нужно выполнить коммиты.И поддерживать утомительно, если ваш SSL-сертификат или пароль периодически меняются.Но это не позволяет использовать имена пользователей и пароли в сценариях сборки.

Возможно, такой плагин, как SVN Publisher , может помочь с тем, чего вы пытаетесь достичь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...