Jenkins管道 - emailextrecipients是空的

时间:2017-06-30 14:39:04

标签: jenkins jenkins-pipeline email-ext

请注意,我是Jenkins的初学者,所以我可能错过了一些明显的东西。

我尝试在Jenkins管道设置中使用Email-ext插件,但我似乎无法检索任何收件人。

在我的Jenkinsfile中运行以下代码

echo  emailextrecipients([
    [$class: 'DevelopersRecipientProvider'],
    [$class: 'CulpritsRecipientProvider'],
    [$class: 'FirstFailingBuildSuspectsRecipientProvider'],
    [$class: 'FailingTestSuspectsRecipientProvider']])

什么都不打印,发送邮件代码:

emailext(
    attachLog: true, 
    body: 'Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"', 
    recipientProviders: [[$class: 'CulpritsRecipientProvider'], [$class: 'DevelopersRecipientProvider']], 
    subject: 'FAILED: Job \'${env.JOB_NAME} [${env.BUILD_NUMBER}]\':'
)

结果

 An attempt to send an e-mail to empty list of recipients, ignored.

我能够发送示例邮件,因此这似乎有效。我是否需要在Jenkins设置中执行任何操作来定义这些变量?

2 个答案:

答案 0 :(得分:1)

我不知道你是否仍然需要一个答案,但是和一位同事我们遇到了同样的问题,看起来我们的Jenkins已经老了并安装了旧的插件版本。 手动更新后,它正在运行。

答案 1 :(得分:0)

这对我有用,相应地选择mimeType。我们使用HTML正文。

emailext (

  to: "testmail@company.com",

  mimeType: 'text/html',

  subject: "SUBJECT HEADING",

  attachLog: true,

  body: "MESSAGE CONTENT"

  )