Первоначальная идея состояла в том, чтобы запустить специфическую c сборку на указанном c узле (ведомом) после объединения изменений в главную ветку на GitHub.
Конфигурация:
- Jenkins (версия 2.226) находится на компьютере с Centos8 VM в VirtualBox;
- Настройка VM: Java 11 OpenJDK (версия openjdk "11.0.5"), git версия 2.18.2
Шаги выполнены:
- Создан проект Jenkins (задание), который клонирует репозиторий Github и запускает на нем несколько команд mvn;
- Настроил задание для запуска на новый узел, кроме главного узла;
Как и ожидалось: задание выполняется правильно.
Я использовал ngrok, чтобы выставить свой сервер Jenkins и сгенерировать внешнюю ссылку на него; Добавил URL полезной нагрузки '
http://bla.ngrok.io/github-webhook/' в GitHub;
Как и ожидалось: я могу успешно пропинговать сервер Jenkins.
В Jenkins я настроил задание на запуск через SCM (включен 'триггер GitHub для опроса GITScm'); Затем я go перехожу на GitHub и фиксирую изменение в основной ветви.
Фактические результаты: сборка запускается, но только на главном узле.
Я отметил автономный мастер-узел, чтобы принудительно выполнить запущенное задание на новом ведомом устройстве. Фактические результаты: ничего не происходит.
Я включил главный узел и попытался снова запустить задание. Фактические результаты: ничего не происходит.
Я добавил файл jenkins.log, чтобы посмотреть, что происходит, и записано действие «poked build». После этого, вероятно, он ожидает выполнения сборки, но этого никогда не происходит. В конце запускается «Discider фоновой сборки Periodi c».
2020-03-24 21:35:11.733+0000 [id=16] INFO o.j.p.g.w.s.DefaultPushGHEventSubscriber#onEvent: Received PushEvent for https://github.com/some/some_project from [someip] ⇒ http://blah.ngrok.io:8080/github-webhook/
2020-03-24 21:35:11.734+0000 [id=16] INFO o.j.p.g.w.s.DefaultPushGHEventSubscriber$1#run: Poked simple_build
2020-03-24 21:39:07.386+0000 [id=206] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Started Periodic background build discarder
2020-03-24 21:39:07.403+0000 [id=206] INFO hudson.model.AsyncPeriodicWork#lambda$doRun$0: Finished Periodic back
Я что-то пропустил?
Ограничено ли действие построения триггера веб-хука только для выполнения на главном узле?