如何格式化jenkins构建服务器电子邮件以使内容不在同一行?

时间:2013-05-13 19:43:21

标签: email jenkins continuous-integration

我过去曾经使用过哈德森,对此非常满意。它似乎运作良好。

我最近安装了jenkins并设置了可编辑的电子邮件插件。

詹金斯版本:1.513 Email-ext插件版本:2.28

不幸的是,当我尝试添加其他令牌/覆盖默认电子邮件时,它只是将所有令牌附加到同一行。

这令人困惑。我已经为html设置了电子邮件。

关于如何格式化这个更好的任何提示?

发送的默认电子邮件(不是可编辑的电子邮件)工作正常,但我想了解更多有用信息。

不幸的是,这封电子邮件的格式使它几乎无用。

这是我的可编辑内容:

$BUILD_TAG

$BUILD_ID

$SVN_REVISION

$CHANGES

$CAUSE

$DEFAULT_CONTENT

$WARNINGS_NEW

$WARNINGS_COUNT

以下是收到的电子邮件:

  

jenkins-DotNet-43 2013-05-13_16-09-40 7481 [kevin] -help layout由SCM更改开始DotNet - Build#43 - 成功:在http:// [buildserver]检查控制台输出:8080 / job / DotNet / 43 /查看结果。 [kevin] -help layout由SCM更改开始[...截断142行...] CopyFilesToOutputDirectory:将文件从“obj \ Release \ Model.Wpf.dll”复制到“bin \ Release \ Model.Wpf.dll” 。 Model.Wpf - > C:\ Jenkins.jenkins \ jobs \ DotNet \ workspace \ dotnet \ Messenger \ Model \ Model.Generic \ bin \ Release \ Model.Wpf.dll将文件从“obj \ Release \ Model.Wpf.pdb”复制到“bin \”发布\ Model.Wpf.pdb”。完成建筑项目“C:\ Jenkins.jenkins \ jobs \ DotNet \ workspace \ dotnet \ Messenger \ Model \ Model.Ge

修改

注意:当我输入“< BR>”时项目之间的条目由电子邮件中的换行符分隔。不幸的是,虽然在令牌本身(如更改列表)中是NO行分隔符 - 例如,多行提交全部列在一行上。

内容存在,但很难破译。似乎邮件插件或其他一些相关系统中存在错误。

2 个答案:

答案 0 :(得分:11)

您已经注意到,您需要在令牌之间实际使用HTML换行符,以便它们不会显示在同一行上,因此我将在同一行上回答有关多个更改日志条目的部分。

内容令牌参考粗体强调我的:

  

$ {CHANGES,showPaths,showDependencies,format,pathFormat}       显示自上次构建以来的更改。

     
      
  • showDependencies - 如果为true,则显示对此构建依赖的项目的更改。

         

    默认为false。

  •   
  • showPaths - 如果为true,则显示由提交修改的路径。

         

    默认为false。

  •   
  • 格式 - 对于列出的每个提交,包含%X的字符串,其中%X是作者的%a,日期的%d,消息的%m,路径的%p之一,   或%r进行修订。并非所有修订系统都支持%d和%r。如果   如果指定,将忽略showPaths。

         

    默认为“[%a]%m \ n”。

  •   
  • pathFormat - 包含%p的字符串,用于指示如何打印路径。

         

    默认为“\ t%p \ n”。

  •   

设置了未参数化的${CHANGES}令牌,以便在纯文本电子邮件中显示。您需要对其进行配置,以便在HTML环境中正确显示。

示例:<ul>${CHANGES, format="<li>[%a] %m</li>"}</ul>

答案 1 :(得分:0)

可以尝试

mimeType:'HTML/text'

使用emailext插件,并使用HTML <br>标记添加新行。 令人惊讶的是,mimeType:'text/html'在我的情况下不起作用,而mimeType:'HTML/text'在我的情况下起作用。