Ошибка после фиксации (код выхода 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

Другие вопросы по тегам