解决jenkins邮件发送不出去

解决jenkins邮件发送不出去,第1张

jenkins做自动化测试生成测试报告后发送邮件,设置邮箱后,jenkins测试邮件发送成功,构建邮件发送失败

发送邮件的设置需要设置多处:

(1) Jenkins Location

系统管理员邮件地址: 123@qq.com

(2)Extended E-mail Notification

SMTP server: smtp.qq.com

Credentials 添加 (这里没有配置邮箱和邮箱授权码导致测试邮件发送成功,构建邮件发送失败)

Default user e-mail suffix: @qq.com

Default Content Type:HTML(text/html)

Default Recipients: 123@qq.com ,aaa@126.com ,freshmboy@163.com

Reply To List: 123@qq.com

(3)邮件通知

SMTP服务器: smtp.qq.com

用户默认邮件后缀: @qq.com

高级 => √使用SMTP认证 用户名 :123@qq.com 密码:qq授权码

字符集: UTF-8

√通过发送测试邮件测试配置

Project Recipient List: 123@qq.com ,aaa@126.com

Content Type: HTML(text/html)

Default Content:

1、控制台输出邮件debug信息

在 jenkins >设置 中 把 Extended E-mail Notification 中开启 Enable Debug Mode ,然后在构建中查看“控制台输出”时,就能看到邮件的debug信息。

2、查看debug信息

发送邮件 503 Error:

need EHLO and AUTH first !

报这个错的原因是邮箱登录需要设置安全码,切记安全码不是邮箱密码,是邮箱授权码。

Extended E-mail Notification => Credentials => 添加凭据(此处密码填写邮箱授权码)

看到其他有个回答,跟我的错误和处理方式相似:

用的QQ邮箱SMTP进行邮件发送,所有配置对了,SMPT开了,用的也是授权码,还是报错:535 Login Fail. Please enter your authorization code ,最终定位结果:把 jenkins>设置 中的 邮件通知 和 Extended E-mail Notification 的邮件发送信息设置成一致,就解决了。

1、登录进入qq邮箱 ;

2、 点击“设置” ;

3、 点击“账户” ;

4、下滑到“POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”;

5、点击“生成授权码”;

6、短信验证,发送短信;

7、点击“我已发送”,复制生成的授权码,即可用于jenkins配置邮箱

注:除了qq外,163等其他邮箱也可以生成授权码,用于jenkins配置邮箱

1 切换成root用户 

2 生成公钥  这里注意会生成两份密钥 .pub为公 另一个为私

3 查看公钥

4 把公钥放入git

5 检验权限

6 打开复制私钥

7 进入Jenkins  添加凭据,类型 SSH Username with private key

在下方密钥区域 粘贴 私钥

8 在工程下面的密钥区域选择刚生成的

执行中如果出现权限不足 或者路径不对

1 路径不对 可以查看本地路径是否存在脚本 如果路径配制成环境变量 前面需要加$ 如$SHELLPATH 直接输入路径则不需要加任何符号 如 /media/shell/**.sh

2 出现权限错误 你需要让jenkins使用root用户 *** 作如下 以下用ubuntu举例

文件中

JENKINS_USER=$NAME

JENKINS_GROUP=$NAME

改称

JENKINS_USER=root

JENKINS_GROUP=root

修改目录权限 

cd /var/lib/chown -R root:root ./jenkins

重启jenkins 不同版本重启方式不同 自行百度

systemctl restart jenkins

编译服务器mount到jenkins本机  利用了NFS

更新系统软件包

安装NFSServer

清除目录所有权限限制

先打开 exports 里面定义了NFS服务器访问权限

设置访问权限

/mnt/nfs_share 是共享目录路径

rw 设置可以读写

sync 需要先将更改写入磁盘 然后才能应用更改

no_root_squash / no_subtree_check 消除子树检查

1) 全子网可访问

2) 单独网络可访问

中间ip换成本机ip 如192.168.0.1

打开 然后查看状态

在Ubuntu和Debian上安装NFS客户端:

在CentOS和Fedora上安装NFS客户端:

ip改成本机IP即可

或者直接修改配置文件

1) 在NFS服务器的共享文件夹中创建个文件

2) 在NFS客户端中查看文件是否存在

ip换成本机ip

查看路径是否正确即可

把缺少的依赖库先编译一遍


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/7921722.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-11
下一篇2023-04-11

发表评论

登录后才能评论

评论列表(0条)

    保存