2013-05-01 61 views
7

我正在使用Jenkins和email-ext發送構建通知。 Build在out目錄中生成存儲爲簡單HTML的小型自定義報告。現在,我可以輕鬆地將此報告附加到電子郵件中,但我想要的是將此報告呈現給電子郵件正文本身。我知道我可以編寫自己的果凍模板,但這需要訪問構建服務器(安裝果凍腳本),我也想避免這種情況。所以我的問題是:如何將html文件的內容包含到jenkins email-ext的模板中?

  1. 我可以將任意文件的內容(在構建期間生成)添加到Email-Ext插件的Content字段嗎?
  2. 如果我不能,在詹金斯發送這樣的報告最簡單的方法是什麼?
+0

[將HTML文件內容加載到Div \ [無需使用iframes]]的可能重複(http://stackoverflow.com/questions/3535055/load-html-file-contents-to-div-沒有使用的內置頁框) – abc 2015-04-30 23:15:15

回答

14

它看起來像最簡單的方法是使用電子郵件-EXT

腳本看起來像這樣的「預發送腳本」:

def reportPath = build.getWorkspace().child("HealthTestResults.html") 
msg.setContent(reportPath.readToString(), "text/html"); 

它呈現HealthTestResults.html的內容位於工作區的根部,就像消息的正文一樣。

+0

有沒有一種方法可以在build.getWorkspace()中運行腳本?我想處理TEST * .xml文件。 – 2013-09-03 23:58:13

+0

@Noel Yap - 將XML文件處理爲HTML的最佳方法是向構建中添加XSL流程。然後將輸出作爲內聯附件(參見上文)。 – Ramon 2014-05-19 15:22:37

+0

此代碼適用於我,但現在我的問題是,有一個附件(在插件的「附件」部分指定)缺少 – 2015-05-12 05:59:55

0

我嘗試使用


def reportPath = build.getWorkspace().child("HealthTestResults.html") 
msg.setContent(reportPath.readToString(), "text/html"); 

但電子郵件發送出去是這樣的:


框架警報 本文旨在通過幀查看特徵。如果看到此消息,則說明您正在使用不支持幀的Web客戶端。


你知道原因嗎? 邁克Chaliy

+1

這應該是在接受的答案中的評論,而不是回答。 – Xiao 2015-09-06 03:13:01

4

簡單的方法,包括HTML文件以電子郵件的內容是添加以下行默認的內容= $ {文件路徑=「yourfilename.html」}

這對我的作品在詹金斯電子郵件ext插件

相關問題