作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
完成工作后我想发送电子邮件通知。如果作业是手动触发的,则至少包含 RequesterRecipientProvider
(如果填充了触发构建的用户)。我从 gitlab Push webhook 触发,在任何recipientProviders中都没有配置电子邮件地址。
emailext (
mimeType: 'text/html',
replyTo: '$DEFAULT_REPLYTO',
subject: subject,
body: details,
to: requester,
recipientProviders: [[$class: 'CulpritsRecipientProvider'],
[$class: 'RequesterRecipientProvider'],
[$class: 'DevelopersRecipientProvider'],
[$class: 'FailingTestSuspectsRecipientProvider' ],
[$class: 'FirstFailingBuildSuspectsRecipientProvider']
]
)
你知道这些recipientProvider什么时候被填满吗? email-ext从哪里获取收件人列表?
最佳答案
过去几天我一直在为此绞尽脑汁,我想我已经明白了:
它是如何工作的(对我来说):
首先 - 在 jenkins.co/configure 中检查电子邮件分机插件的所有触发器,并在默认收件人输入中填写一些电子邮件,并用一个空格分隔
第二 - 在管道中,将电子邮件分机代码片段放置在关闭管道之前的括号内,如下所示
post{
always{
script{emailext(to: '$DEFAULT_RECIPIENTS', stuff....)}}}
这样我就不会在构建时收到绑定(bind)错误,并且电子邮件会从默认收件人发送到邮件列表,而且嵌套在 post{} 中的括号似乎是在上一步中检查的触发器。
关于jenkins - Jenkins 管道中的recipientProviders始终为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44503055/
我是一名优秀的程序员,十分优秀!