未收到Jenkins电子邮件扩展插件发送的电子邮件?

w46czmvw  于 2022-11-02  发布在  Jenkins
关注(0)|答案(2)|浏览(263)
pipeline 
{
  agent any
  stages
  {
    stage ('Start')
    {
      steps
      {
        echo 'Hello'
      }
    }
  }
  post
  {
    success
    {
      emailext (
          to: 'me@domain.zzz',
          subject: 'Test subject',
          body: 'Test body'
        )
    }
  }
}

这个简单的Jenkins管道似乎成功地发送了电子邮件(输出为:Sending email to: me@domain.zzz),但收件箱中从未收到这些电子邮件。
Jenkins的日志里什么都没有。
我可以从Manage Jenkins -> Configure System -> E-mail Notification成功发送测试邮件。
这里我正在使用Email Extension plugin。有没有办法从电子邮件扩展插件发送测试邮件?有没有其他方法来找出为什么电子邮件没有发送/接收?

qcbq4gxm

qcbq4gxm1#

首先:在Manage Jenkins -> Configure System -> E-mail Notification -> Advanced下检查Enable Debug Mode。这会在作业运行后提供大量信息!
问题是 TLS 没有为电子邮件扩展插件启用,因为只有一个SSL复选框可用。当使用经典的Manage Jenkins -> Configure System -> E-mail Notification时-有一个TLS复选框,但这里没有。
The solution以在Debian Linux上启用startTLS:登录Jenkins并编辑/etc/default/jenkins。编辑JAVA_ARGS并添加以下内容:"-Dmail.smtp.starttls.enable=true"。最后,这行代码看起来像这样:JAVA_ARGS="-Djava.awt.headless=true -Dmail.smtp.starttls.enable=true"。重新启动Jenkins:sudo service jenkins restart .
完成此操作后,发送电子邮件即可正常工作。

v7pvogib

v7pvogib2#

E-mail Extension插件(此处使用的,如问题所附管道代码中的emailext所示)支持SMTP over TLS,并自v2.83起添加了“TLS”配置复选框(请参见release notes)。

相关问题