2016-03-04 76 views
7

我試圖在Jenkins管道作業中使用email-ext插件,但是在自由式作業中使用email-ext時,我認爲理所當然的大多數標記不會被擴展?Email-ext和工作流/管道 - 有些令牌沒有擴展?

例如

node { 
    emailext body: '${DEFAULT_CONTENT}', mimeType: 'text/html', replyTo: '$DEFAULT_REPLYTO', subject: '${DEFAULT_SUBJECT}', to: '$DEFAULT_RECIPIENTS' 
} 

生成的電子郵件:

主題:

$ PROJECT_NAME - 打造#$ BUILD_NUMBER - $ BUILD_STATUS!

身體:

$ PROJECT_NAME - 打造#$ BUILD_NUMBER - $ BUILD_STATUS:檢查在$ BUILD_URL控制檯輸出查看結果。

公平地說,在通用配置中設置了什麼。但是,這些令牌都沒有擴展,如果我直接從工作流中使用它們,它們也不會擴展,例如

emailext body: '$PROJECT_NAME', mimeType: 'text/html', replyTo: '$DEFAULT_REPLYTO', subject: '${DEFAULT_SUBJECT}', to: '$DEFAULT_RECIPIENTS' 

這將是「好」,如果我能夠用$ SCRIPT我現有的基於Groovy的電子郵件模板,但這些都是也不擴大。

道歉,如果我失去了一些令人難以置信的明顯的東西 - 我沒有太多的Pipeline經驗 - 缺乏電子郵件的支持已經阻止我移動到目前爲止。

我今天測試了通過乾淨安裝Jenkins 1.651,email-ext 2.41.3和Pipeline 1.14。

+0

你把它整理出來了嗎?你能舉一個例子來回應嗎?我問這是因爲插件似乎缺乏文檔https://issues.jenkins-ci.org/browse/JENKINS-33980 – sorin

+0

@sorin:我沒有任何簡單的共享代碼,但是,我放棄了模板並且在cps-global-lib插件中實現了我自己的幫助程序/電子郵件構建器代碼,當我完成後仍然調用email-ext。重複的努力,但我需要它。 –

回答

3

令牌與AbstractBuild高度綁定,該工作流程不使用。所以,現在令牌不會被正確替換。我需要修改token-macro插件(這是令牌擴展的基礎),以便它可以與Run對象而不僅僅是AbstractBuild一起工作,但這是一個很大的任務,我還沒有做過更改。您可以使用工作流DSL生成相同的內容。

+2

你能指點我們一個可行的例子嗎?我試圖讓管道內部的email-ext插件工作,但似乎無法找到任何有用的示例。檢查https://issues.jenkins-ci.org/browse/JENKINS-33980 – sorin

+0

我也在尋找例子。看來我打了一個死衚衕 – KeshV