如何禁止Jenkins向无关Git用户发送邮件
解决Jenkins Extended E-mail Notification插件发送无关邮件的问题
问题原因
Extended E-mail Notification插件默认会自动将构建触发者、Git变更提交者加入收件人列表,即使你指定了$BUILD_USER_EMAIL,如果插件配置中保留了自动添加这些角色的选项,就会导致无关人员收到邮件。
具体解决步骤
1. 调整任务专属的邮件配置
- 进入目标Jenkins任务的配置页面,找到「Extended E-mail Notification」模块
- 在「Recipients」(收件人)字段中,确保只保留
$BUILD_USER_EMAIL,删除任何额外的变量(比如$CHANGES_AUTHORS、$DEFAULT_RECIPIENTS等) - 展开「Advanced Settings」(高级设置),找到你使用的触发器(比如「Always」):
- 取消勾选「Send to committers」(发送给提交者)、「Send to culprits」(发送给责任人)、「Send to developers」(发送给开发者)这类自动添加收件人的选项
2. 检查全局邮件配置(若影响所有任务)
- 进入Jenkins全局配置页面(Manage Jenkins → Configure System),找到「Extended E-mail Notification」板块
- 将「Default Recipients」(默认收件人)设置为
$BUILD_USER_EMAIL,同时关闭全局层面的自动添加提交者/触发者的选项 - 确保全局配置不会覆盖单个任务的自定义设置
3. 排查其他邮件插件干扰
- 检查任务是否同时启用了Jenkins默认的「E-mail Notification」插件,若不需要请禁用该插件的任务配置,避免重复发送邮件
验证方法
修改配置后重新触发构建,查看构建日志,确认邮件仅发送给$BUILD_USER_EMAIL对应的邮箱,不再出现无关收件人的发送记录。
内容的提问来源于stack exchange,提问作者DonnyFlaw
相关产品推荐
相关产品推荐

