Как запустить работу Hudson с другой работой, которая находится в другом Hudson - PullRequest
4 голосов
/ 26 февраля 2010

У меня есть работа A в Хадсоне A и работа B в Хадсоне B. Я хочу вызвать работу A на работу B.

Ответы [ 5 ]

6 голосов
/ 26 февраля 2010

В конфигурации вашего задания B установите флажок Триггер удаленно (например, из сценариев) и укажите токен.

В тексте справки указан URL-адрес, по которому можно вызвать сборку из удаленных сценариев (например, из сценария оболочки в задании A Хадсона).

Однако это вызовет задание B независимо от того, каков результат задания A.
Ответ Моречилли, вероятно, является лучшим решением.

5 голосов
/ 26 февраля 2010

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

http://wiki.hudson -ci.org / дисплей / HUDSON / URL + Изменение + Trigger

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

4 голосов
/ 28 сентября 2010

В последних версиях Hudson страница lastSuccessfultBuild / HTML будет содержать истекшее время с момента ее создания, которое будет различным для каждого вызова. Это вызывает вращение триггера изменения URL.

Одним из исправлений является использование API-интерфейсов xml, json или python для запроса только подмножества информации. Используя параметр запроса tree, следующий URL вернет XML-документ, содержащий только номер сборки последней успешной сборки.

http://SERVER:PORT/job/JOBNAME/lastSuccessfulBuild/api/xml?tree=number

Использование этого URL восстановило поведение, которое я ожидал от триггера изменения URL.

2 голосов
/ 23 февраля 2012

Лично я считаю, что самый простой способ сделать это - посмотреть метку времени сборки: PROJECT_NAME/lastSuccessfulBuild/buildTimestamp

1 голос
/ 13 февраля 2014

Я использую wget для запуска сборки:

wget --post-data 'it-just-need-to-be-a-POST-request' 
--auth-no-challenge --http-user=myuser --http-password=mypassword
http://jenkins.xx.xx/xxx/job/A/build?delay=0sec

Есть и другие способы запуска сборки, смотрите REST и другие API jenkins. Но это прекрасно работает на Unix.

...