У меня есть общая библиотека Jenkins с кучей репозиториев Git.
- Репо 1: Репозиторий Jenkins Shared Library , который глобально настроен в Jenkins.
- Репо 2: Код приложения репо с действительным кодом приложения.
- Репо 3: Репо конфигурации приложения с файлами конфигурации для различных сред приложения.
Конвейер имеет различные этапы, такие как извлечение, сборка, проверка качества кода, модульное тестирование, сборка и развертывание.
Мы используем предоставленный Jenkins шаблон электронной почты в общей библиотеке для уведомления о состоянии сборки,Пример кода:
def nTo = globalNotificationSettings.mail.to ?: ""
def nEnabled = globalNotificationSettings.mail.enabled ?: false
def nSubject = "${nBuildStatus}: Job ${env.JOB_NAME} Build #${env.BUILD_NUMBER}"
def nBody = '''${SCRIPT, template="groovy-html.template"}'''
if(nTo && nEnabled) {
emailext body: nBody, \
subject: nSubject,\
to: nTo, \
mimeType : 'text/html'
}
Полученное электронное письмо заканчивается отображением всех изменений, объединенных в одну таблицу, и не отображает изменений для репо.Для быстрого ознакомления шаблон электронной почты доступен по адресу Jenkins CI github .
. После дальнейшего анализа становится очевидным, что расширение электронной почты использует объект GitChangeSet и неКажется, у нас нет информации о том, из какого репозитория исходит набор изменений.
Есть ли способ, с помощью которого кто-то может порекомендовать получить указанную ниже информацию в общей библиотеке?
- Список наборов изменений, обрабатываемых сборкой на уровне репо
- Я не ищу решения для изменения шаблона.Скорее, мне нужна помощь / руководство о том, как получить доступ к ревизии на уровне репозитория с помощью Jenkins Shared Library.В частности, обратитесь к информации о репо для общей библиотеки Jenkins, которая настроена глобально в Jenkins.