【问题标题】:jenkins do not send emails to multiple recipientsjenkins 不会向多个收件人发送电子邮件
【发布时间】:2020-04-17 07:26:42
【问题描述】:

我使用 Jenkins email-ext 插件在构建开始时发送电子邮件。 当我只指定此类电子邮件的一个收件人时,一切都很顺利 - 我收到了电子邮件。

但是当我指定更多收件人时,Jenkins 停止发送电子邮件,尽管在构建日志中我可以看到它们正在发送(我没有收到)

在构建日志中看到以下消息:“发送电子邮件至:abc@abc.com def@abc.com”。我没有看到任何错误。

【问题讨论】:

    标签: jenkins


    【解决方案1】:

    对我有用的是在电子邮件地址之间使用逗号和空格,例如:

    x1@jenkins.com, x2@jenkins.com, x3@jenkins.com
    

    Jenkins 作业的 XML 表示形式如下:

    <maven2-moduleset plugin="maven-plugin@2.6">
    ...
     <reporters>
      <hudson.maven.reporters.MavenMailer>
       <recipients>x1@jenkins.com, x2@jenkins.com, x3@jenkins.com</recipients>
       <dontNotifyEveryUnstableBuild>false</dontNotifyEveryUnstableBuild>
       <sendToIndividuals>true</sendToIndividuals>
       <perModuleEmail>true</perModuleEmail>
      </hudson.maven.reporters.MavenMailer>
     </reporters>
    </maven2-moduleset>
    

    它一直在发送邮件,这一切都很好。

    【讨论】:

    • 感谢您的回复。我发现当电子邮件地址包含点(例如 a.b.c@gmail.com)时会出现这样的问题。删除点后,电子邮件开始正确发送(gmail 电子邮件可以带点或不带点)
    • 如果我的电子邮件不是 gmail 怎么办?对我来说它不起作用。已经2年过去了,我仍然面临同样的问题((
    【解决方案2】:

    我还想知道为什么当给一封电子邮件时它有效,而当多个电子邮件地址用逗号分隔时它没有。设法使它工作。

    这对我有用

    pipeline {
            agent any
    
            environment {
                EMAIL_INFORM = 'abc@gmail.com;def@gmail.com'
            }
    
    
            stages {
            }
    
            post {
    
                success {  
                    emailext body: 'Check console output at $BUILD_URL to view the results.', 
                            to: "${EMAIL_INFORM}", 
                            subject: 'Jenkins - Released $PROJECT_NAME - #$BUILD_NUMBER'
                }
    
            }
        }
    

    你应该使用分号';'当通过管道中的声明性语法调用“emailext”时,而不是逗号','。

    希望它现在可以工作。

    【讨论】:

    • @t_sologub 请尝试我的解决方案,看看它是否有效。
    【解决方案3】:

    确保您在项目配置中为 email-ext 选择了选项,以便为每个孩子发送电子邮件,而不仅仅是为父母发送电子邮件,然后它应该可以工作。

    【讨论】:

    • 如果可行,请点击答案旁边的勾号 - 我知道你是新来的
    • 能否请您更具体地描述在哪里可以找到此选项?我在项目配置中没有看到它..
    • 在作业配置中启用“可编辑电子邮件通知”,然后点击高级,然后只需选择“发送到收件人列表”以及您喜欢的任何其他选项
    • 谢谢,问题是我之前已经这样做了。最奇怪的是,如果我在项目收件人列表中只留下一封电子邮件,我就会收到它。
    • 这曾经是 jenkins 中的一个已知问题,后来在以后的版本中得到了解决,您使用的是哪个版本?建议更新到 2.38.1
    【解决方案4】:

    将 Email-ext 插件降级到 2.25

    这里是链接http://mirrors.jenkins-ci.org/plugins/email-ext/2.25/

    这对我有用。 希望能帮助到你! 谢谢:)

    【讨论】:

    • 管理 Jenkins -> 管理插件 -> 高级 -> 上传插件。上传你的 .hpi 文件并重启 jenkins。
    【解决方案5】:

    以防万一其他人遇到类似问题,就我而言,我无法将其发送到多个带有点的电子邮件地址。但事实证明,插件的“高级设置”中有一些字段会导致问题。

    也就是说,我没有任何可以发送到收件人列表的触发器。因此,如果您希望发送这些电子邮件,请确保您至少有一个触发器可以发送到收件人列表,否则您将收到一条警告,提示您尝试发送到一个空列表并且没有发送任何电子邮件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-18
      • 2017-12-05
      • 2015-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多