Ich weiß nicht, ob dies überhaupt möglich ist, aber immer noch hier fragen, ob jemand versucht hat/darüber nachgedacht.Senden Jenkins Konsole Ausgabe als HTML-E-Mail
Ich habe ein Build ausgeführt, dass, wenn fehlschlägt HTML-Code wie unten angegeben Echo. Ich möchte diesen HTML-Code als E-Mail an alle Empfänger senden.
Derzeit, wenn ich das einfache E-Mail-Plugin verwende, wird die gesamte Konsolenausgabe als eine E-Mail gesendet, die all diese HTML-Tags enthält (nicht lesbar). Dann habe ich das E-Mail-Ext-Plugin installiert, aber ich bin mir nicht sicher, ob das Pre-Send-Skript meine Konsolenausgabe lesen und E-Mails senden kann. Hat jemand es versucht? Lohnt es sich, Zeit damit zu verbringen, oder sollte ich nur die Ausgabe ändern, um formatierten Text anzuzeigen?
Dieser Build ist für interne Tools und ich kann keine HTML-Datei erstellen oder den Link zu der HTML-Datei als E-Mail senden, da der Pfad hinter der Firewall ist.
Ich weiß nicht, ob dies überhaupt unterstützt wird, aber ist es möglich, dass die Konsolenausgabe HTML-Ausgabe zeigt?
Danke für die Hilfe!
<style type="text/css">
table.gridtable {
font-family: verdana,arial,sans-serif;
font-size:11px;
color:#333333;
border-width: 1px;
border-color: #666666;
border-collapse: collapse;
}
table.gridtable th {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #666666;
background-color: #dedede;
}
table.gridtable td {
border-width: 1px;
padding: 8px;
border-style: solid;
border-color: #666666;
background-color: #ffffff;
}
</style>
<table class="gridtable">
<thead>
<tr>
<th>Service Checked</th>
<th>Status</th>
<th>Response</th>
</tr>
</thead>
<tbody>
<tr>
<td>canary</td>
<td>Success</td>
<td>Please override the check() method</td>
</tr>
<tr>
<td style="color: red;"><strong>www.mysite.com</strong></td>
<td style="color: red;">Failure</td>
<td>Ping to https://www.mysite.com/canary?from=here FAILED</td>
</tr></tbody></table>
Danke für die schnelle Antwort. Mein Build gibt dieses HTML in der Konsolenausgabe aus. Ich werde jetzt deine vorgeschlagene Methode ausprobieren! – Sumitk
Also habe ich mit Ihrem Beispiel im Pre-Send-Skript versucht, aber es gibt mir eine seltsame Ausnahme. Ich habe das in meinen Pre-Send Block geschrieben: '$ {BUILD_LOG_EXCERPT, start =" \\ b (start-here) \\ b ", end =" \\ b (end-here) \\ b "} und meine Test PHP-Skript druckt diese beiden vor und nach dem HTML, aber ich bekomme 'org.codehouse.groovy.control.MultipleCompilationErrorsException: Start fehlgeschlagen: Script1.groovy: 1: unerwartetes Token: <@ Zeile 1, Spalte 1.
Nein nein ... das geht in den Körper der E-Mail, in 'Default Content', nicht' pre-send' – Slav
email-ext Plugin funktioniert für mich ziemlich gut. Versuche es.
Quelle
2014-12-10 21:14:50 deveshase
Dank I werde es jetzt versuchen! – Sumitk
So habe ich es mit Hilfe von @Slav gelöst.
Jenkins Job ausgeführt wurde diesen Skript:
Der Auftrag mit email-ext konfiguriert wurde und in den hinzufügen Post-Build-action-> Editierbare E-Mail-Benachrichtigung -> Standard-Content Ich habe folgende:
Dies senden Sie die E-Mail als HTML-Inhalt und nicht den Text von HTML.
Quelle
2014-12-12 06:49:40 Sumitk
Gehen Sie auf "Manage-jenkins" -> "System konfigurieren" als auf der "Erweiterte E-Mail-Benachrichtigung" Einstellungen, legen Sie die folgenden Zeile in "Standardinhalt" text-Bereich
Quelle
2015-09-22 11:18:46
Verwandte Themen