Могу ли я настроить jenkins для отправки электронного письма со сводкой отчета о статическом анализе? - PullRequest
2 голосов
/ 18 ноября 2011

Я хотел бы отправить электронное письмо после завершения сборки с некоторыми данными из запущенных отчетов (PMD, Checkstyle, Findbugs, Cobertura), такими как количество проблем, новые проблемы, покрытие и т. Д.

Возможно ли это?

Ответы [ 3 ]

1 голос
/ 25 февраля 2014
<j:set var="pmd" value="${it.getAction('hudson.plugins.pmd.PmdResultAction')}" />
<j:if test="${pmd.isEmpty()!=true}">
   <TABLE width="100%">
       <TR><TD colspan="2" class="bg1"><B>PMD Result</B></TD></TR>
      <tr><td>Total:</td><td>${pmd.result.numberOfWarnings}</td></tr>
      <tr><td>High:</td><td>${pmd.result.getNumberOfAnnotations('HIGH')}</td></tr>
      <tr><td>Normal:</td><td>${pmd.result.getNumberOfAnnotations('NORMAL')}</td></tr>
      <tr><td>Low:</td><td>${pmd.result.getNumberOfAnnotations('LOW')}</td></tr>
      <tr><td>New:</td><td>${pmd.result.numberOfNewWarnings}</td></tr>
      <tr><td>Fixed:</td><td>${pmd.result.numberOfFixedWarnings}</td></tr>
      <tr><td colspan="2"><a href="${rooturl}${build.url}/pmdResult/">View Report</a></td></tr>
   </TABLE >    
<BR/>
</j:if>

Попробуйте!Больше проверьте мою суть здесь: https://gist.github.com/yangboz/9204868

1 голос
/ 08 декабря 2011

Мне удалось получить некоторые данные с помощью плагина email-ext.Вам необходимо включить желе-файл в электронное письмо, отправленное следующим образом:

${JELLY_SCRIPT, template="html"}

Существует шаблон по умолчанию (html.jelly), который включает результаты junit и Cobertura, которые я изменил, добавив что-то вроде этого:

<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler" xmlns:d="jelly:define">
 ...
 <j:set var="fb" value="${it.getAction('hudson.plugins.findbugs.FindBugsResultAction')}" />
  <table width="100%">
   <tr><td colspan="2"><b>Findbugs Result</b></td></tr>
   <tr><td>Total:</td><td>${fb.result.numberOfWarnings}</td></tr>
   <tr><td>Fixed:</td><td>${fb.result.numberOfFixedWarnings}</td></tr>
   <tr><td>New:</td><td>${fb.result.numberOfNewWarnings}</td></tr>
   <tr><td colspan="2"><a href="${rooturl}${build.url}/findbugs">View Report</a></td></tr>
</table>
 ...
</j:jelly>

Для PMD и CheckStyle вы можете сделать что-то похожее с:

<j:set var="pmd" value="${it.getAction('hudson.plugins.pmd.PmdResultAction')}" />
<j:set var="cs" value="${it.getAction('hudson.plugins.checkstyle.CheckStyleResultAction')}" />

Я пока не нашел способа включить цифры низкого / среднего / высокого приоритета для результатов.

0 голосов
/ 06 марта 2015

В моем случае сработало https://stackoverflow.com/a/22008267/1688570

Точные имена действий можно найти в файле \ Jenkins \ jobs \ fispp-all-master \ builds \ $ {buildNumber} \ build.xml. То есть Мне пришлось использовать hudson.plugins.findbugs.FindBugsMavenResultAction, чтобы показать правильные результаты.

...