Многоотраслевой конвейер Jenkins не планирует задания тегов

Я пытаюсь заставить Дженкинса выполнять многоотраслевой конвейер для создания тегов аналогично ветвям. В Jenkins 2.73 (не уверен, когда была добавлена ​​функциональность), проекты Multibranch можно настроить для получения как ветвей, так и тегов из исходного хранилища. Изначально я думал, что это будет идеально для моих нужд (теперь мой Jenkinsfile может собирать сборки для разработки или производства из того же места в Jenkins). Многоотраслевое задание с настроенным обнаружением тегов

У меня сам процесс сборки запущен и работает довольно успешно с помощью скриптового конвейера, однако моя проблема заключается в том, что, хотя задания ветвления прекрасно воспринимают мои триггеры (Cron еженедельно) и, таким образом, запускаются с помощью функциональности notifyOnCommit плагина Git (позволяет чистить сборку еженедельно)., но постройте также на фиксации в репо через webhook сканирования репо), сборки тегов этого не делают.

Кто-нибудь еще сталкивался с этим? Если да, нашли ли вы какой-нибудь разумный способ решить эту проблему?

Соответствующий фрагмент из моего скриптового конвейера (я пробовал с и без overrideIndexTriggers установка): properties( [ pipelineTriggers( triggers: [ cron('H 02 * * 7') ] ), overrideIndexTriggers(true) ] )

Конфигурация опроса из задания ветки, сгенерированного многоотраслевым конвейером, кажется прекрасной Задания, сгенерированные из тегов многоотраслевым конвейером, не получают ту же конфигурацию, как ни странно...

В журнале сканирования многоотраслевого конвейера есть примечание, согласно которому теги никогда не будут автоматически планироваться: Processed 8 branches Checking tags... Checking tag testing ‘Jenkinsfile’ found Met criteria No automatic builds for testing Processed 1 tags [Mon Oct 23 09:55:00 UTC 2017] Finished branch indexing. Indexing took 8.1 sec Finished: SUCCESS

Мой проект основан на Docker, и я хотел бы запускать сборку релизов еженедельно, вносить изменения в базовый образ и т. Д.

У кого-нибудь есть идеи о том, что я могу сделать, чтобы заставить многоотраслевые проекты планировать сборки тегов?

1 ответ

Решение

В соответствии с JENKINS-47496 кажется, что автоматическая активация сборки для обнаруженных тегов не предусмотрена. Стивен Коннолли предлагает объяснение и предложение того, что вы могли бы сделать:

Стивен Коннолли добавил комментарий - 6 дней назад

По умолчанию теги не создаются (потому что в противном случае вы можете получить шторм сборки при извлечении из хранилища) и, что еще хуже, теги порядка будут непредсказуемы... и у вас может быть файл Jenkins, который развертывается в рабочем режиме, когда тег встроенный.

В branch-api есть точка расширения BranchBuildStrategy, которая, если она будет реализована, позволит решить, создавать ли теги.

См. https://github.com/jenkinsci/github-branch-source-plugin/pull/158 для начальной точки о том, как создать такой плагин расширения... Я думаю, что над https://github.com/AngryBytes/jenkins-build-everything-strategy-plugin

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