Устаревший код начал эту работу. Информация о причинах недоступна
Всегда есть дополнительная сборка, запускаемая плагином продвижения сборки на jenkins, который я не знаю почему...
Вот весь трубопровод:
- dev передает "feature_branch" на github
- Дженкинс запускает сборку "feature_branch" для запуска всех модульных тестов
на стройке:
- если ветка прошла тест, она должна перейти к "проверке кода" (я использую здесь promo_build_plugin, продвижение вручную после просмотра кода),
- Я использую "триггер / сборка вызовов в других проектах" в качестве действия для запуска "развертывания задания" для сборки, только если он проходит проверку кода.
на рабочем месте:
Я вижу, что новая сборка запущена, и этот feature_branch объединен, но всегда происходит другая сборка без "изменений; устаревший код запустил эту работу. Информация о причине недоступна"
Я целый день гуглил, пытаясь решить эту проблему, какая-нибудь помощь?
1 ответ
У вас, вероятно, есть зацепка после фиксации, которая запускает ту же работу через URL или jenkins-cli
Редактировать после комментариев OP:
Но я начинаю задумываться над заданием развертывания, я не настраивал "Построить, когда изменение передается в Github", вместо этого я использую "Построить, когда продвигается другой проект", так что я думаю, что даже перехват github запущен, он не закончится с дополнительной сборкой?
Ну, есть твоя проблема ^^. Механизм " Trigger / Call builds " полностью отделен от " Build, когда продвигается другой проект ".
- Первый позволяет запускать новую сборку из шага сборки или продвижения (привязанного к этой конкретной акции).
- Последний будет запускать сборку при любом продвижении настроенного задания. Это обратная конфигурация " Построить другие проекты " после сборки.
Кроме того, триггеры сборки не имеют AND, они имеют OR. Построить, когда произойдет тот или иной триггер. Удалите " Сборка при продвижении другого проекта " из конфигурации, чтобы избавиться от лишних сборок.
Теперь, если вы хотите предотвратить запуск сборок с помощью ловушек фиксации SCM, необходимо убедиться, что в задании не настроен опрос SCM. В качестве альтернативы разные плагины SCM имеют свои собственные опции (я знаю, что плагин SVN SCM позволяет "игнорировать перехваты после фиксации"; не знаю о плагине git SCM)