写点什么

如何用建木 CI 发送邮件

作者:Jianmu
  • 2022 年 2 月 14 日
  • 本文字数:1708 字

    阅读完需:约 6 分钟

如何用建木CI发送邮件

不知道大家在工作中,是不是也和我一样需要经常发送邮件呢,邮件可以事前清晰传达,事后有据可查,同时还有利于保密,一般用于比较正式的交流。

最近发现建木 CI 官方已经提供了发送邮件的节点,真是太懂我了!


这里给大家介绍一下如何使用建木 CI 发送邮件!

1.查看节点文档

节点文档里面详细描述了每一个参数的信息,可以参考节点文档填写对应的参数

节点文档:https://jianmuhub.com/_/email



2.发送邮件

大家可以选择自己的邮箱服务器,我这里使用的 163 邮箱,SMTP 服务器地址为:http://smtp.163.com

auth_code参数为发件人邮箱授权码,在邮箱设置中获取,先开启 SMTP 服务,再获取授权码,如 163 邮箱:



2.1 发送文本邮件

type参数表示邮件内容的类型,默认为plain,表示普通文本。可选值:plain,html

DSL 示例:

name: 发送文本邮件pipeline:  send_email:    type: email:1.0.0    param:      host: smtp.163.com      sender: xxx@163.com      auth_code: ((email.authcode))      receivers: '["xxx@qq.com"]'      subject: 文本邮件      text: 这是一个文本邮件
复制代码

​邮件示例:



2.2 发送 html 标签邮件

type参数为 html,会将邮件内容当成 html 标签

我们可以在text参数中输入自己需要的 html 标签内容

DSL 示例:

name: 发送html邮件pipeline:  send_email:    type: email:1.0.0    param:      host: smtp.163.com      sender: xxx@163.com      auth_code: ((email.authcode))      type: html      receivers: '["xxx@qq.com"]'      subject: html邮件      text: <p>这是html邮件</p><img  src="https://scpic.chinaz.net/files/pic/pic9/202109/apic35394.jpg" />\
复制代码

邮件示例:



2.3 发送带附件的邮件

attach_path参数为附件路径,默认为空,表示不发送附件

注意:当路径为文件时,直接发送;当路径为目录时,会压缩为 zip 文件后再发送

附件路径一般为上游节点处理、输出的文件(夹)路径,我这里直接使用git_clone节点克隆 gitee 仓库,将仓库中的文件夹作为附件路径输入

DSL 示例:

name: 发送附件邮件pipeline:  git_clone:    type: git_clone:1.2.0    param:      remote_url: https://gitee.com/xxx/xxx.git  send_email:    type: email:1.0.0    param:      host: smtp.163.com      sender: xxx@163.com      auth_code: ((email.authcode))      type: html      receivers: '["xxx@qq.com"]'      subject: 附件邮件      text: <p>这是附件邮件</p><img src="https://scpic.chinaz.net/files/pic/pic9/202112/bpic25075.jpg" />      attach_path: ${git_clone.git_path}/data  # git仓库中的文件路径
复制代码

邮件示例:



2.4 抄送、密送邮件

通过参数cc_receivers设置抄件人邮箱

通过参数bcc_receivers设置密送人邮箱

DSL 示例:

name: 发送抄送、密送邮件pipeline:  send_email:    type: email:1.0.0    param:      host: smtp.163.com      sender: xxx@163.com      auth_code: ((email.authcode))      type: html      receivers: '["xxx@qq.com"]'      cc_receivers: '["xxx@qq.com"]'      bcc_receivers: '["xxx@qq.com"]'      subject: 附件邮件      text: <p>这是附件邮件</p><img src="https://scpic.chinaz.net/files/pic/pic9/202112/bpic25075.jpg" />
复制代码

邮件示例:



2.5 分别发送邮件

分别发送:会将邮件单独发送给每一个人(包括收件人、抄送人和密送人)

将参数separate_delivery设为true,表示分别发送邮件;默认为 false,表示群发给多个人

DSL 示例:

name: 分别发送邮件pipeline:  send_email:    type: email:1.0.0    param:      host: smtp.163.com      sender: xxx@163.com      auth_code: ((email.authcode))      type: html      receivers: '["xxx@qq.com"]'      cc_receivers: '["xxx@qq.com"]'      bcc_receivers: '["xxx@qq.com"]'      subject: 附件邮件      text: <p>这是附件邮件</p><img src="https://scpic.chinaz.net/files/pic/pic9/202112/bpic25075.jpg" />      separate_delivery: true
复制代码

本文为建木博主「早春的树」的原创投稿文章,转载请联系授权。


项⽬官⽹

项⽬托管

项⽬文档

在线体验

用户头像

Jianmu

关注

国产开源CI/CD产品 2020.08.10 加入

建木持续集成平台基于建木,致力于为国内开发者与DevOps人员提供极致用户体验,提升开发、上线、运维的效率,让软件用户专注于提供业务价值。

评论

发布
暂无评论
如何用建木CI发送邮件