未收到 Jenkins 电子邮件扩展插件发送的电子邮件?
Emails sent by Jenkins Email Extension plugin not received?
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。有没有办法从电子邮件扩展插件发送测试邮件?有没有其他方法可以找出为什么电子邮件不是 sent/received?
首先:在 Manage Jenkins -> Configure System -> E-mail Notification -> Advanced
下检查 Enable Debug Mode
。这在作业 运行!
之后提供了很多信息
问题是 TLS 没有为电子邮件扩展插件启用,因为只有一个 SSL 复选框可用。使用经典 Manage Jenkins -> Configure System -> E-mail Notification
时 - 有一个 TLS 复选框,但此处没有。
The solution 在 Debian 上启用 startTLS Linux:登录 Jenkins 并编辑 /etc/default/jenkins
。编辑 JAVA_ARGS
并添加以下内容:"-Dmail.smtp.starttls.enable=true"
。最后,这条线对我来说是这样的:
JAVA_ARGS="-Djava.awt.headless=true -Dmail.smtp.starttls.enable=true"
。重启詹金斯:sudo service jenkins restart
.
完成此操作后,可以发送电子邮件了。
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。有没有办法从电子邮件扩展插件发送测试邮件?有没有其他方法可以找出为什么电子邮件不是 sent/received?
首先:在 Manage Jenkins -> Configure System -> E-mail Notification -> Advanced
下检查 Enable Debug Mode
。这在作业 运行!
问题是 TLS 没有为电子邮件扩展插件启用,因为只有一个 SSL 复选框可用。使用经典 Manage Jenkins -> Configure System -> E-mail Notification
时 - 有一个 TLS 复选框,但此处没有。
The solution 在 Debian 上启用 startTLS Linux:登录 Jenkins 并编辑 /etc/default/jenkins
。编辑 JAVA_ARGS
并添加以下内容:"-Dmail.smtp.starttls.enable=true"
。最后,这条线对我来说是这样的:
JAVA_ARGS="-Djava.awt.headless=true -Dmail.smtp.starttls.enable=true"
。重启詹金斯:sudo service jenkins restart
.
完成此操作后,可以发送电子邮件了。