Jenkins: как указать jenkinsfile в многоотраслевом проекте

Использование Jenkins для многоплатформенных многоотраслевых сборок.

У меня есть несколько проектов Multibranch Pipeline (по одному для каждой платформы, поскольку каждая платформа требует заметно разных этапов сборки). У меня есть один репозиторий кода с несколькими ветвями (поэтому проекты Multibranch Pipeline имеют смысл).

Я хотел бы, чтобы каждый проект Multibranch Pipeline ссылался на другой файл Jenkins, а не все пытались использовать файл с именем Jenkinsfile, расположенный в корне репозитория.

Эта исправленная ошибка говорит о том, что я могу это сделать, но я могу » не найти какой-либо документации, описывающей, как это сделать. Кто-нибудь знает, как я могу это сделать?

Спасибо за ваше время! Аллен


person Allen Pestaluky    schedule 17.07.2017    source источник
comment
Какую версию Jenkins вы используете? Поскольку он был объединен совсем недавно, может быть, его просто нет в той версии, которую вы используете?   -  person Kdawg    schedule 18.07.2017
comment
Вот и все! Обновление многоотраслевого плагина с версии 2.14 до 2.16 устранило мою проблему: теперь я могу настроить jenkinsfile в моей конфигурации сборки для моего многоотраслевого проекта!   -  person Allen Pestaluky    schedule 18.07.2017
comment
Превосходно! Кроме того, мне давно нужна эта функция, поэтому я рад, что теперь знаю, что эта функция существует. Я добавлю ответ с указанием точной версии, в которой это было добавлено.   -  person Kdawg    schedule 18.07.2017


Ответы (1)


Обновите плагин Pipeline Multibranch как минимум до версии 2.15. Из журнала изменений на странице https://wiki.jenkins.io/display/JENKINS/Pipeline+Multibranch+Plugin:

2.15 (01 июня 2017 г.)

  • JENKINS-34561 Возможность выбора имени / пути сценария, отличного от Jenkinsfile.

После этого вы можете перейти на страницу конфигурации вашего проекта и получить доступ к настройке, показанной ниже:

Конфигурация пути к файлу Jenkins

person Kdawg    schedule 18.07.2017
comment
Я заметил, что у кого-то еще был такой же вопрос. Вы также можете получить эти точки ответа здесь, если хотите: stackoverflow.com/questions/37272120/ - person Allen Pestaluky; 18.07.2017
comment
Есть идеи, как использовать это из определения job-dsl multibranchPipelineJob? - person Mark Gargan; 29.11.2017
comment
если желаемое имя для файла было CheckmarxJenkinsfile, тогда добавьте это в файл job-dsl для multibranchPipelineJob configure {project - ›(project / 'factory' / 'scriptPath') ‹< 'CheckmarxJenkinsfile'} - person Mark Gargan; 08.12.2017
comment
Можете ли вы использовать переменные среды внутри этого Script Path? Я пробовал %BRANCH_NAME%/Jenkinsfile, BRANCH_NAME/Jenkinsfile и т. Д. И т. Д. Безрезультатно. - person Cole; 13.04.2018
comment
@Cole попробуй $ {env.BRANCH_NAME} - person Kevin Chen; 23.08.2018