【问题标题】:ext-email plugin, Not sending emails to default recipients from pipelineext-email 插件,不从管道向默认收件人发送电子邮件
【发布时间】:2018-12-31 15:11:57
【问题描述】:

我正在尝试借助 ext-email 插件从 Jenkins 脚本化管道发送电子邮件。

我已经为插件配置了默认收件人。

这是我的管道:

node {
  try {
    echo "hi"
  } catch (e) {
    currentBuild.result = "FAILED"
    notifyBuild(currentBuild.result)
    throw e
  }
  finally {
    notifyBuild(currentBuild.result)
  }
}

def notifyBuild(String buildStatus = 'STARTED') {
  buildStatus =  buildStatus ?: 'SUCCESSFUL'
  def subject = "${buildStatus}: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'"
  def summary = "${subject} (${env.BUILD_URL})"
  def details = """
  <p>STARTED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
  <p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>
  """ 
  emailext (
    subject: subject,
    body: details,
    attachLog: true,
    to: ${DEFAULT_RECIPIENTS},
    recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider'], [$class: 'CulpritsRecipientProvider']]
  )
}

我尝试将电子邮件发送给触发该作业的用户,但我没有收到发送给 DEFAULT_RECIPIENTS 的电子邮件。我也试过to: env.DEFAULT_RECIPIENTS

我收到此错误:

groovy.lang.MissingPropertyException: No such property: $DEFAULT_RECIPIENTS for class: groovy.lang.Binding

【问题讨论】:

    标签: jenkins jenkins-plugins


    【解决方案1】:

    我也有同样的问题,刚才我通过以下步骤得到了解决方案:

    emailext body: '''${SCRIPT, template="groovy-html.template"}''', 
            subject: "${env.JOB_NAME} - Build # ${env.BUILD_NUMBER} - Successful", 
            mimeType: 'text/html',to: '$DEFAULT_RECIPIENTS'
    

    记下$DEFAULT_RECIPIENTS 周围的单引号,这是成功的关键。

    我不知道为什么不使用双引号 :(

    【讨论】:

    【解决方案2】:

    你应该去管理 Jenkins->配置系统->扩展电子邮件通知。在那里您应该填写默认收件人字段并保存。 (如果您没有电子邮件扩展插件,请安装它)。

    然后您可以在“to”子句中使用$DEFAULT_RECIPIENT 变量。请把大括号去掉。

    希望这会有所帮助。

    【讨论】:

    • 当我尝试这个时,我得到一个错误 -> No such property: DEFAULT_RECIPIENTS。请注意,实际变量是 DEFAULT_RECIPIENTS,而不是 DEFAULT_RECIPIENT。两者的结果相同。代码:emailext ( to: "$DEFAULT_RECIPIENTS", subject: "STARTED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'", body: """&lt;p&gt;STARTED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':&lt;/p&gt; &lt;p&gt;Check console output at "&lt;a href="${env.BUILD_URL}"&gt;${env.JOB_NAME} [${env.BUILD_NUMBER}]&lt;/a&gt;"&lt;/p&gt;""") }
    猜你喜欢
    • 1970-01-01
    • 2016-06-05
    • 1970-01-01
    • 1970-01-01
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-18
    相关资源
    最近更新 更多