文章目录
- 1 准备
- 2 Jenkinsfile emailext示例
- 3 参考
1 准备
-
安装Email Extension Plugin插件
-
配置Email Extension Plugin插件
-
Manage Jenkins-> Configure System-> Extended E-mail Notification
-
SMTP server
* Default user E-mail suffix(接收邮件默认用户邮箱后缀,包含@,如@qq.com,可以跟发件人后缀不一致)
* Advanced -
勾选Use SMTP Authentication
* User Name 填写默认发件人邮箱地址及密码,如admin@qq.com
* 勾选Use SSL
* SMTP Port,一般从邮件服务商设置中可以查询到,如网易的SMTP SSL协议端口号有465/994两个
* Default Content Type选择HTML (text/html)1
2
31 * 勾选Allow sending to unregistered users
2 * 保持设置
3
2 Jenkinsfile emailext示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 1pipeline {
2 agent any
3 stages {
4 stage('Build') {
5 steps {
6 sh 'bash auto_test.sh'
7 }
8 }
9 }
10 post {
11 // 构建失败则发送邮件,接收方使用了gitlab的环境变量获取提交代码用户的用户名
12 failure {
13 emailext body: """<p>FAILED: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]':</p>
14 <p>Check console output at "<a href="${env.BUILD_URL}">${env.JOB_NAME} [${env.BUILD_NUMBER}]</a>"</p>""",
15 subject: "[FAILED]: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]'",
16 to: "${env.gitlabUserName}"
17 }
18 }
19}
20
21
至此,构建完成失败后自动发送邮件配置完成,如果想配置成无论构建成功与否都发送邮件,可以使用post里的always或者使用success+failure结合的方式实现。