Как использовать SVN post-commit крючок триггера сборки Дженкинса? - PullRequest
0 голосов
/ 23 сентября 2019

Основная цель состоит в том, чтобы я хотел зафиксировать некоторые файлы в репозитории SVN и запустить jenkins для автоматического создания теста. Метод, который я хочу использовать, - это пост-фиксация ловушек.

Я использую TortoiseSVN, иЯ создаю хранилище для тестирования.Я изменяю post-commit.tmpl на post-commit.bat, который находится в папке D: \ Repository \ hooks.

ниже - то, что в post-commit.bat: (Windows 10)

SET REPOS=%1
SET REV=%2

FOR /f "tokens=*" %%a IN (
'svnlook uuid %REPOS%'
) DO (
SET UUID=%%a
)

FOR /f "tokens=*" %%b IN (
'svnlook changed --revision %REV% %REPOS%'
) DO (
SET POST=%%b
)

D:/Wget/wget ^
    --header="Content-Type:text/plain;charset=UTF-8" ^
    --post-data="%POST%" ^
    --output-document="-" ^
    --timeout=2 ^
    http://localhost:8080/jenkins/subversion/%UUID%/notifyCommit?rev=%REV%

сообщения об ошибках:

post-commit hook failed (exit code 8)with output:
--2019-09-23 13:50:53-- 
http://localhost:8080/"realUUID"/notifyCommit?rev=7
Resolving localhost(localhost)... ::1, 127.0.0.1
Connecting to localhost(localhost)|::1|:8080... connected.
HTTP request sent, awaiting response... 404 Not Found
2019-09-23 13:50:53 ERROR 404: Not Found

я сделал следующее: 1. изменил настройки jenkins на «Разрешить анонимный доступ для чтения» 2. защита CSRF от отмены

У меня естьПонятия не имею, что является основным шагом общения SVN с Дженкинсом.

Пожалуйста, помогите, и спасибо за ваш ответ!

1 Ответ

0 голосов
/ 23 сентября 2019

Полученная вами ошибка: HTTP 404 NOT FOUND, и вам нужно проверить скрипт хука на наличие ошибок:

HTTP request sent, awaiting response... 404 Not Found
2019-09-23 13:50:53 ERROR 404: Not Found

Поэтому URL-адрес, по которому wget contact имеет значение недопустим :http://localhost:8080/jenkins/subversion/%UUID%/notifyCommit?rev=%REV%.Вам необходимо дважды проверить URL на предмет опечаток, и чтобы% UUID% был правильным.Обратите внимание, что я не вижу никакого SET для% UUID% в вашей ловушке - может быть, это проблема?

...