Ошибка после фиксации (код выхода 3) с выводом
Я пытаюсь вызвать задание Jenkins удаленно, используя скрипт после фиксации. В настоящее время я фиксирую код через Eclipse Kepler/Subversive/SVNKit Connector.
скрипт пост-фиксации:
if svnlook dirs-changed -r "$REV" "$REPOS" | grep -qEe '^trunk/'; then
wget --post-data="job=APS-RemoteServerAction&token=SECRET&ACTION=deploy&ASSET_NAME=POST-COMMIT-TEST&DEPLOY_ENV=DEV&REVISION=$REV" "http://my.domain.com:8080/buildByToken/buildWithParameters"
fi
Скриншот ошибки через Eclipse:
Важные заметки:
- Код фиксируется правильно, браузер хранилища указывает на новую версию
- Работа выполняется на Дженкинса, история показывает, что
- Каждый раз, когда я фиксирую, я получаю это сообщение об ошибке
- Я пытался добавить флаг
--quiet
, но я получил тот же код выхода.
Я думаю, что это из-за wget и публикации значений?
Правка № 1
Я хотел бы отметить, что я использую корневой плагин токена авторизации сборки Jenkins. Я переключился на POST вместо GET (который работает) из-за того, что в итоге перешел на https и не пустил токен в URL.
1 ответ
Я понимаю, что сообщение об ошибке означает, что wget не может записать файл с именем buildWithParameters в свой текущий каталог. использование wget -O -
записать вывод в стандартный вывод.
Ошибка (я думаю), потому что он пытается загрузить веб-страницу в локальный каталог. Вам просто нужно пропинговать конечную точку, чтобы собрать jenkins, поэтому я использовал --spider (не загружает), --no-proxy (иногда я получал кешированные ответы) и -q (не выводить, cuz svn сообщу об этом).
wget --post-data="job=APS-RemoteServerAction&token=SECRET&ACTION=deploy&ASSET_NAME=POST-COMMIT-TEST&DEPLOY_ENV=DEV&REVISION=$REV" "http://my.domain.com:8080/buildByToken/buildWithParameters" --spider --no-proxy -q