Дженкинс: Несколько репозиториев Git для одного проекта
Я хочу построить проект, используя два репозитория Git. Один из них содержит исходный код, а другой - скрипты сборки и развертывания.
Моя проблема в том, что мне нужно иметь репозиторий для создания и развертывания различных частей проекта (большой проект, несколько репозиториев, те же сценарии сборки и развертывания), но Дженкинс, похоже, не в состоянии справиться с этим (или Я не знаю/не нашел, как).
Ответы
Ответ 1
UPDATE
Несколько плагинов SCM теперь устарели, поэтому пользователи должны перейти на плагин трубопровода.
Старый ответ
Да, Дженкинс справится с этим. Просто используйте Multiple SCMs
в разделе "Управление исходными кодами", добавьте свои репозитории, а затем перейдите в раздел "Дополнительно" каждого репозитория. Здесь вам нужно установить Local subdirectory for repo (optional)
и Unique SCM name (optional)
.
Ваш репозиторий будет вытащен в подкаталог Local, который вы установили, чтобы вы могли их построить в любом порядке.
Обновление для ответа harish
- вам нужно установить несколько плагинов SCM для достижения этой функциональности.
Ответ 2
Ответ от Петра Менсика прав, но по-видимому, это не доступно по умолчанию в Дженкинсе. Для получения этой функции необходимо установить несколько плагинов SCM: https://wiki.jenkins-ci.org/display/JENKINS/Multiple+SCMs+Plugin
Ответ 3
У меня был тот же вопрос, когда я посмотрел на ответ плагина Multiple SCM, я заметил, что этот плагин теперь указан как устаревший. Существует уведомление, в котором рекомендуется использовать для этого конвейер.
Ниже приведен пример конфигурации того, как мне удалось это сделать с помощью конвейера.
node() {
stage ('Extract') {
parallel 'Extract':{
dir('project1') {
git url: 'ssh://[email protected]/project1.git'
}
dir('project2') {
git url: 'ssh://[email protected]/project2.git'
}
}
}
}
Ответ 4
Просто поделитесь своим опытом при работе с несколькими SCM. Если вы хотите добавить несколько репозиториев git в свою сборку jenkins, убедитесь, что другие версии плагина git совместимы с несколькими плагинами SCM. Вот список плагинов с версией, которая работала для меня:
- GitHub API Plugin 1.44
- Jenkins git клиентский плагин 1.6.2
- Jenkins git плагин 2.0.1
- Git Плагин сервера 1.2
- Несколько SCM 0.2
Раньше я обновлялся до нескольких SCM 0.3, и я не смог добавить в него репозиторий git.
Rgds,
Мана