Не могу найти способ редактировать конфигурацию многоотраслевых конвейерных проектов. Когда я перехожу на уровень ветки, есть только пункт меню «конфигурация просмотра», в отличие от обычных проектов конвейера.

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

22
rhoerbe 26 Июл 2017 в 12:24
Я думаю, что у меня та же проблема, каждый конвейер проекта с несколькими ветвями не может быть сохранен: нет кнопки сохранения / применения ... У вас такое поведение?
 – 
user2668735
26 Окт 2017 в 19:11
1
Правильно: многоотраслевой конвейер можно настроить через веб-интерфейс, а конфигурация каждой ветки определяется через Jenkinsfile в системе управления версиями.
 – 
rubicks
21 Дек 2017 в 23:46

3 ответа

Вы можете редактировать общую конфигурацию проекта конвейера с несколькими ветвями, например репозиторий, из которого он будет читать, и любые необходимые учетные данные, триггеры для сканирования ветки для проверки изменений ( Примечание : не то же самое, что триггеры сборки ), стратегия потерянных элементов, конфигурация сборки, свойства и многое другое. Это можно просмотреть, щелкнув «Конфигурация» на странице, на которой показаны все ветки, или будет сказано, что она пуста, если их нет.

Обратите внимание, что это применимо только к многоотраслевым конвейерам, которые не являются частью организационной папки (не проекта типа «Bitbucket Team / Project» или «GitHub Organization».)

enter image description here enter image description here


Если вы щелкнете по названию ветки (например, master), нажатие «View Configuration» позволит вам только просмотреть его. Вы должны отредактировать файл, определяющий этот конвейер в правильной ветви, чтобы изменить его. В случае этих снимков экрана вам необходимо отредактировать Jenkinsfile в репозитории Test-Multibranch-Job в ветке master, чтобы изменить конфигурацию.

Чтобы добавить механизм триггера, вы можете добавить triggers { gitlab(<config-here>) } в свой Jenkinsfile, если ваше репо находится в Gitlab. Также обратите внимание, используете ли вы декларативный конвейер или конвейер со сценариями, потому что синтаксис отличается.

enter image description here enter image description here

ПРИМЕЧАНИЕ. Я использую Jenkins ver. 2,92

3
Wimateeka 25 Июн 2019 в 19:36
Это неверно для многоотраслевых конвейеров, которые являются частью организационной папки. См. Комментарий @ eversMcc
 – 
SilverJan
12 Июн 2019 в 15:02
Какая часть не соответствует действительности? Вы можете уточнить?
 – 
Wimateeka
12 Июн 2019 в 18:15
Редакционная часть. Для многоотраслевого конвейера, который является частью организационной папки (например, Bitbucket или GitHub), вы не можете редактировать конфигурацию после начальной настройки. Это также то, что упоминается в issues.jenkins-ci.org/browse/…
 – 
SilverJan
23 Июн 2019 в 06:51
Вы говорите о «команде / проекте Bitbucket» или «организации GitHub»? Я никогда ими раньше не пользовался. Я могу отредактировать ответ, чтобы указать, что многоотраслевой конвейер можно настроить через веб-интерфейс, а конфигурация каждой ветки определяется через Jenkinsfile в системе управления версиями только для многоотраслевых конвейеров / рабочих процессов, не находящихся в папках организации. Если у вас есть решение для редактирования многоотраслевого конвейера, который является частью папки организации, вы должны опубликовать его здесь, чтобы другие могли прочитать. Кроме того, автор этого вопроса никогда не указывал, какой тип проекта они использовали.
 – 
Wimateeka
25 Июн 2019 в 18:56
Лично я испытал это в команде / проекте Bitbucket. Однако, согласно проблеме Jenkins Jira, это применимо к обоим. Решение отсутствует, поскольку оно есть по замыслу (согласно комментарию к проблеме Jenkins Jira). Спасибо, что добавили эту информацию в свой ответ!
 – 
SilverJan
28 Июн 2019 в 02:21

https://issues.jenkins-ci.org/browse/JENKINS-33900

«По задумке эти вакансии доступны только для просмотра» - Джесси Глик

Вы должны иметь возможность определять конфигурацию в самом конвейере, например https://jenkins.io/doc/book/pipeline/syntax/#triggers < / а>

2
eversMcc 21 Дек 2017 в 20:11
Мое требование - запускать сборки на основе коммитов git, не подвергая Дженкинса внешнему виду. Так что периодические работы в моем случае не работают.
 – 
rhoerbe
22 Дек 2017 в 00:21
..и если вы хотите иметь разную конфигурацию для разных ветвей, вы можете указать разные triggers{gitlab(<config-here>)} в каждой ветке / Jenkinsfile и использовать параметры конфигурации 'branchFilterType', 'includeBranchesSpec' и / или 'excludeBranchesSpec' (я хотя лично не пытался)
 – 
eversMcc
27 Дек 2017 в 12:56

Если вы пытаетесь изменить конфигурацию Multibranch, например, чтобы настроить триггеры Multibranch Action, которые не имеют конфигурации Jenkinsfile, вы можете отредактировать файл конфигурации прямо на своем сервере в /var/lib/jenkins/jobs/NAMEOFPROJECT/config.xml

0
ImreFitos 6 Май 2020 в 21:46