Подтвердить что ты не робот

Как включить git changelog в электронные письма Jenkins?

Есть ли способ импортировать журнал изменений, созданный Дженкинсом, в тему электронной почты (либо по электронной почте по умолчанию, либо через модуль электронной почты-ext)?

Я новичок в конфигурации Jenkins, поэтому прошу прощения, если это простая проблема, но я не смог найти что-либо в документации по электронной почте.

4b9b3361

Ответ 1

Я сконфигурировал подключаемый модуль Email-ext, чтобы использовать официальную документацию CHANGES Token (здесь):

Changes:
${CHANGES, showPaths=true, format="%a: %r %p \n--\"%m\"", pathFormat="\n\t- %p"}

В моих уведомлениях о построении выводится следующее:

Changes:
Username: 123
    - Project/Filename1.m
    - Project/Filename2.m
    -- "My log message"

Для сообщений HTML я поместил один и тот же код в div и добавил форматирование:

<div style="padding-left: 30px; padding-bottom: 15px;">
${CHANGES, showPaths=true, format="<div><b>%a</b>: %r %p </div><div style=\"padding-left:30px;\"> &#8212; &#8220;<em>%m</em>&#8221;</div>", pathFormat="</div><div style=\"padding-left:30px;\">%p"}
</div>

Вот пример скриншота о том, как он выглядит в сообщениях электронной почты, отправленных Jenkins (этот конкретный коммит произошел от Subversion, но он работает точно так же для Git и других систем управления версиями):

Change list for Jenkins

Ответ 2

Из оригинальной документации: Чтобы просмотреть список всех доступных токенов электронной почты и то, что они отображают, вы можете нажать "?" (вопросительный знак), связанный с ссылкой на токен содержимого в нижней части раздела электронной почты-ext на экране конфигурации проекта.

Вот результат:

${CHANGES}
Displays the changes since the last build.

showDependencies
    If true, changes to projects this build depends on are shown. Defaults to false
showPaths
    If true, the paths, modifued by a commit are shown. Defaults to false
format
    For each commit listed, a string containing %X, where %x is one of:

    %a
        author
    %d
        date
    %m
        message
    %p
        path
    %r
        revision

    Not all revision systems support %d and %r. If specified showPaths argument is ignored. Defaults to "[%a] %m\\n"
pathFormat
    A string containing %p to indicate how to print paths. Defaults to "\\t%p\\n"

Ответ 3

Не в теме сообщения электронной почты, хотя вы можете отправить журнал изменений получателю в виде вложения по почте, используя Git Changelog Plugin как действие пост-сборки в Jenkins Job. Установите флажок Create a file, укажите имя файла (CHANGELOG.md для меня), как показано ниже:

введите описание изображения здесь

Убедитесь, что вы создали Управление исходными кодами как GIT в Jenkins JOB.

Затем создайте Редактируемое уведомление по электронной почте после сборки и скопируйте имя файла журнала изменений git в качестве значения Attachments, как показано ниже:

введите описание изображения здесь