目录
一、系统配置
想要使用jenkins构建并发送邮件,首先需要进行全局配置。
1、进入jenkins概览界面->点击Manage Jenkins->点击Configure System进入配置界面;
2、配置Extended E-mail Notification;
◎ SMTP server 填写SMTP服务器;
◎ Default user E-mail suffix 填写默认的邮箱后缀;
◎ Use SMTP Authentication 选项勾选上;
◎ User Name/Password 填写邮箱地址及密码,第三章节第5步的Project From如果空白,默认邮件发送地址就是这个了;如果想设置多个邮件发送地址,可以点击下方的Add按钮,我这里就填了2个;
◎ SMTP port 我填写的是25,这个根据实际情况来;
◎ Charset 填写UTF-8即可;
再向下是配置默认邮件正文的地方,这一部分内容都可以按照实际需要来配置,以下是参考;
◎ Default Content Type 是默认邮件正文类型;
◎ Default Recipients 是默认收件人;
◎ Reply To List 是默认回复列表;
◎ Default Subject 是默认的邮件名称;
◎ Default Content 是默认的邮件正文;
再往下,勾选Enable Debug Mode、Enable watching for jobs,Default Triggers可以按照实际需要配置,这些是为了方便调试用的;
3、配置E-mail Notification;
这里跟第2步的内容大同小异,参考着来吧;
4、点击save保存,全局配置就OK了。
二、连接构建节点
1、因为我的构建节点是Linux系统,所以首先需要在jenkins上安装SSH相关的插件。找到Manage jenkins->Manage Plugins->SSH Build Agents,点击install即可;
2、接下来创建jenkins节点,找到New Nodes按钮,点击它,输入你想要的Node Name;
3、点击OK之后,来到配置界面,注意一下Launch method这里选择Launch agents via SSH,Host和Credentials分别填IP、用户名及密码。最后点击save保存;
三、创建和配置Item
1、接下来来到首页,在你想要的View下面点击New Item按钮,创建一个Item;
2、输入你想要的Item名称,可以选择拷贝其它Item的配置,点击OK后创建成功;
3、当然,拷贝其它Item之后,我们需要对当前Item进行调整;
4、首先在Description中写入任何你想写的描述信息,勾选Restrict where this project can be run,输入第一步中我们创建的节点名称;
5、配置Build Triggers中的Build periodically,也就是自动触发的时间,比如说我配置了每周五下午五点触发构建;
6、添加构建步骤,比如说我想要在Linux下运行py文件,就需要选择Execute shell,然后写上期望运行的命令就好;
7、增加构建后步骤,我在这里配置了每次构建后发送邮件的功能,首先在Add post-build action处选择Editable Email Notification功能,Project From这一栏可以写也可以不写,不写就是默认系统管理员邮箱发送邮件了;
8、点击上图右下角的Advanced Settings:
◎ Triggers这个板块我选择了Always,也就是不论构建成功还是失败,都会发送邮件;
◎ Recipient List就是收件人列表,写邮箱账户就可以,多个邮箱账户用逗号隔开;
◎ Content Type选择HTML,所以下面的Content使用的就是HTML格式;
◎ Subject是邮件名称;
◎ Attachments是邮件附件,我将构建节点构建目录下的MyItem.xls文件作为邮件附件发送,多个附件用逗号隔开;
◎ Attach Build Log是是否在附件中添加构建日志,我选择是;
9、保存后,就可以等待它按时构建喽。
四、遇到的问题
最开始构建后,发送邮件的步骤总是报这个错误:535 5.7.3 Authentication unsuccessful,搜索到的错误原因:
1、电子邮件地址不完整,或密码错误;
2、SMTP信息配置错误;
我检查了这些都没问题。后来终于排查出来了,是邮件正文格式不对,修改格式后构建+发送邮件一气呵成了。