0

所以我的目标是让 Jenkins 向参与 Mercurial 存储库中任何代码更改的开发人员发送电子邮件。我已经在 Mercurial 上设置了我的钩子,现在每当我对 repo 进行任何类型的更改时,都会在 Jenkins 上执行构建,该构建没有任何问题。现在的问题是它只将它发送到我在 Jenkins 中配置的电子邮件,而不是进行更改的开发人员的电子邮件。在 Mercurial 上,我确保将用户设为我主要使用的电子邮件。我很确定下面的代码将能够访问进行更改的开发人员的电子邮件:

pipeline {
   agent any

   stages {
      stage('Hello') {
         steps {
            echo 'Hello World'
         }
      }
   }

   post {
    always {
    emailext body: 'A Test EMail', recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']], subject: 'Test'
    }
}
}

鉴于它还没有,我怀疑 Jenkins 不知道进行更改的开发人员的电子邮件。我如何告诉 Jenkins 进行更改的开发人员的电子邮件?我还确保为 Jenkins 安装了所有的电子邮件插件,但仍然没有运气。

4

2 回答 2

0

我认为您正在寻找电子邮件扩展插件

允许您配置“默认收件人”、“开发人员”、“罪魁祸首”、“请求者”等。

还有一个电子邮件扩展模板插件可用。

于 2020-05-24T06:43:11.000 回答
0
  1. 添加构建步骤并选择执行windows批处理命令
  2. 获取最近提交的日志并从结果“hg log --limit 1”中选择用户名

  3. 在电子邮件扩展插件中配置此电子邮件

于 2020-05-28T16:11:13.640 回答