用Mailgun方式在Drone pipeline中集成SMTP邮件通知
前言
一般地,集成SMTP邮件通知有3种方式:
- 方式一:使用公司SMTP Server,邮箱名通常为
xxx@company.com
- 方式二:使用免费邮箱服务商提供的SMTP Server(比如QQ邮箱和163邮箱),邮箱名通常为
xxx@qq.com
或xxx@163.com
- 方式三:使用专门的SMTP Service (比如Mailgun),邮箱名通常为
xxx@yourdomain
,此种方式适用于有自己的域名的情况,比如我的域名是 xdevops.cn
本文描述了如何通过Mailgun方式,使用我自己的域名xdevops.cn ,在Drone pipeline中集成SMTP邮件通知。
对使用方式二的情况,可以参考Jenkins 配置邮件通知来开启SMTP服务
在Mailgun中开启SMTP服务
- 在 https://www.mailgun.com/ 上注册账号,需要提供信用卡信息,默认选择了免费套餐;
- 按照提示进行账号验证;
- 添加自定义域名,比如 xdevops.cn;
- 按照提示进行域名验证;
- 选择使用SMTP方式发送邮件,并记录你的SMTP Username和Password。
Mailgun提供的SMTP服务配置:
- SMTP Server:
smtp.mailgun.org
- Port:
587
Mailgun在账号验证获取短信验证码时有一个bug,需要先选择国家(China),后输入手机号码,否则会出现“Internal error“的错误。
参见:
在Drone pipeline中集成邮件通知
下面是一个完整的Drone 1.0 Pipeline示例。
示例项目的.drone.yml
中包含了两个pipeline:ci-java8
和notify
,