1

Jipkinsでパイプライン buildが失敗したときに電子メールを送信しようとしています。例では、ここで見つけることができます:https://github.com/jenkinsci/pipeline-examples/blob/master/jenkinsfile-examples/nodejs-build-test-deploy-docker-notify/JenkinsfileJenkinsパイプラインのGroovyスクリプト:Jenkinsfileで `mail`を使用する

次のように私の具体的なグルーヴィースクリプトが見えます:例外が正しくキャッチされているとビルドに失敗したものの

#!groovy 
node('') { 
    def env = ["JAVA_HOME=${tool 'jdk1.8.0_131'}", "PATH+MAVEN=${tool 'maven_3.1.1'}/bin:${env.JAVA_HOME}/bin", "PATH+GRADLE=${tool 'gradle_4.1'}/bin:${env.JAVA_HOME}/bin" ] 

    def err = null 
    currentBuild.result = "SUCCESS" 

    try { 
    stage('errorStage') { 
     dir('error') { 
      git url: "unknown", branch: "master" 
      withEnv(env) { 
       sh "mvn -Pjenkins-build clean deploy" 
      } 
     } 
    } 
    } catch (caughtError) { 
     println "caught error :" + caughtError 
     err = caughtError 
     currentBuild.result = "FAILURE" 
     mail (body: 
      "Pipeline error: ${err}\nFix me.", 
      from: '[email protected]', 
      subject: 'Pipeline build failed', 
      to: '[email protected]') 
    } finally { 
     /* Must re-throw exception to propagate error */ 
     if (err) { 
      throw err 
     } 
    } 

} 

実は、何も今までに、起こりません。 mailを使用するために必要なものはありますか?多分別のJenkinsのプラグインか何か?事前に

おかげで、

サイモン

+0

Jenkinsでsmtpサーバのアドレスを設定しましたか?はいの場合、Groovyシェルを使用してマシンからアドレスに到達できるかどうかを確認する必要があります。 –

+0

「電子メール通知」セクションおよび「拡張電子メール通知」に正しく設定されています – s1m0nw1

答えて

1

私はジェンキンスの代わりmailemailextプラグインを使用して、それを自分自身を修正することができました。コードは次のようになります。

emailext body: "Pipeline error: ${err}\nPlease go to ${BUILD_URL} and verify the build", 
       recipientProviders: [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']], 
       subject: "'${JOB_NAME}' (${BUILD_NUMBER}) failed", 
       to: '...' 
関連する問題