java 发送邮件_Jenkins实现自动化邮件发送踩坑记录

文章简介

本文分享Jenkins实现邮件发送,安装Jenkins可参考jenkins安装。写这篇文章,是在实际使用Jenkins过程中遇到这样一个问题,当每次Jenkins构建成功或者失败后,需要个人登录Jenkins查看构建结果,同时在构建前做了数据备份,也需要手动的拷贝一份备份文件到本地。为了解决这个问题,便想到了Jenkins的邮件功能。在个人实践中,在每次master分支自动构建前,需要将数据库和代码打包、备份,在Jenkins构建结束之后,将备份的文件发送给对应的负责人。

文章部分细节的地方可能省略待过,因此需要对Jenkins有一定使用的用户比较合适,如果不熟悉的,可以参考上面提交的文章。文章涉及到不准确的信息还望反馈。

大致逻辑

694e7903caf6f035a68c3262f4bbec93.png

接下来整个流程,也都按照该流程进行演示如何配置。

安装插件

首先点击管理,然后点击插件管理,跳转到插件中心。

bb38a8c3fe8920868baef4682b66c1db.png

c8d077a1a95e1427ff14a4e1f783e79e.png

如果没有安装过email对应的插件,点击可选插件按钮,然后输入email关键词,进行搜索即可。这里我已经安装过了,为了演示选择已安装菜单。

1d4bc44770e17dd29596f42bc4a72f21.png
在安装插件的过程中,需要注意一个版本号。2.73版本的插件有一个bug,就是配置正确却不能发送邮件。建议避开这个版本号。

系统配置

安装好插件之后,接下来就需要进入系统配置。进入系统配置,主要配置两个地方,一个是管理员的邮箱地址,一个是插件的配置信息。

fd3f4fd6d2b54da0220c09bd19fe7b21.png

d64fef91f6c69eff72c0f30da5f3e43a.png

a5c63b20b34995c9c5e48a6a47e41490.png

4e28d5f931790133c48177fbeccd93f5.png
记住插件发送邮件的账号一定的和管理员的邮箱账号一致,否者会出现下面错误信息。

错误信息:

com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user
at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1587)
Caused: com.sun.mail.smtp.SMTPSendFailedException: 553 Mail from must equal authorized user;nested exception is:com.sun.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized userat com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:2057)at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1580)at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:1097)at javax.mail.Transport.send0(Transport.java:195)at javax.mail.Transport.send(Transport.java:124)at hudson.tasks.Mailer$DescriptorImpl.doSendTestMail(Mailer.java:581)at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)

错误信息的大致意思就是说,邮箱的授权用户(插件配置的账号)和from(邮件发送者)账号不一致。

这里其实有点小困惑,邮件配置授权账户,为什么管理员的邮件账号还必须保持一致。按理来说,既然配置了授权用户,就采用配置的授权邮箱进行发送呗。可能是系统使用的管理员邮件发送。这里的配置授权仅仅是为了授权第三方邮箱账户吧。

81a00efe5b82b36478056f0dbdf8b5c7.png

项目配置

接下来,我们创建一个任务测试发送邮件。至于具体的配置这里省略待过,直接记录配置邮件的地方。

aa9c6fb99f60ca28dc0f91dc9275f3d2.png

16a9afa2279ccf20589595821b86fcb8.png

这里面就是针对该项目的具体配置信息,上面我们提交到系统配置,属于全局配置。如果这里没有配置,则默认走全局配置。大致的配置信息和全局配置都是相同的作用,可以根据不同的任务,自行配置即可。

3e58dd7fe6165d0384ff52a64541100b.png

eaee70060acb45f210f9cb825d79f214.png

b498955847d37effeca2f21f2a4aa77a.png

邮件测试

最后配置完毕,当提交代码待仓库后,使用webhooks自动触发构建,登录邮箱就可以查看到下面的一些构建基础信息了。如果邮件需要更多的配置信息,直接到任务中去配置即可。

b352d43a70f2a9222674c7593b6df4d5.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/521160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux Shell脚本专栏_监控100台服务器磁盘利用率脚本_07

文章目录监控100台服务器磁盘利用率脚本1. 远程连接生成sshkey2. 复制ssh公钥到目标服务器3. 登录目标服务器查看4. 私钥免登录5. 192.168.43.134 服务器创建host,info文件6. 编辑脚本7. 赋予可执行权限8. 运行脚本9. 命令分解监控100台服务器磁盘利用率脚本 1. df -h 查看磁盘…

在linux下安装python3_【转】在Linux下安装python3

原文链接:http://www.cnblogs.com/feng18/p/5854912.html1、linux下安装python3a、 准备编译环境(环境如果不对的话,可能遇到各种问题,比如wget无法下载https链接的文件)2 下载 Python3.5代码包wget https://www.python.org/ftp/python/3.5.0…

【举栗子】Docker 容器磁盘占满的几种情况 | CSDN博文精选

戳蓝字“CSDN云计算”关注我们哦!作者 | isea533转自 | CSDN博客责编 | 阿秃参考文档:https://docs.docker.com/engine/reference/commandline/dockerd/应用日志过多默认情况下,每个 Docker 容器都有 10G 的存储空间,…

下一代智能数据工厂,阿里云发布全新DataWorks

大数据的开发能力已经成为企业的核心竞争力之一, 企业对数据资产的管理、加工、利用的诉求也越来越强烈。 9月5日,阿里云发布了DataWorks V2版本, 可提升数据开发的效率并简化数据操作,为企业提供了安全可靠的一站式大数据智能云研发平台。 众所周知,企…

MaxCompute 项目空间内的访问控制和权限管理

项目空间内的访问控制分为以下五类: 用户管理ACL授权Policy授权角色管理基于标签的访问控制管理 用户管理 任意非项目空间Owner用户必须被加入MaxCompute项目空间中,并被授予相对应权限,方能操作MaxCompute中的数据、作业、资源及函数。示例…

mysql 中间点策略_网易MySQL中间件的负载均衡策略及性能优化

团队介绍网易乐得DBA组,负责网易乐得电商、网易邮箱、网易技术部数据库日常运维,负责数据库私有云平台的开发和维护,负责数据库及数据库中间件Cetus的开发和测试等等。一、背景随着业务的爆发式增长,电商系统中的读写压力越来越高…

华为与美国公司就授权5G平台展开初期谈判;Linux 中存在严重漏洞;Microsoft 发布 Cosmos DB GA 版……...

关注并标星星CSDN云计算极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周两次,打卡即read更快、更全了解泛云圈精彩newsgo go go iPhone12 概念图&#xff08…

Bellman_Ford算法总结

知识概览 Bellman_Ford算法适合解决存在负权边的最短路问题,时间复杂度为O(nm)。在存在负权边的最短路问题中,Bellman_Ford算法的效率虽然不如SPFA算法,但是Bellman_Ford算法能解决SPFA算法不能解决的经过不超过k条边的最短路问题。 例题展示…

java collections_扫盲java.util.Collections工具包,学习排序、二分、洗牌、旋转算法

作者:小傅哥 博客:https://bugstack.cn沉淀、分享、成长,让自己和他人都能有所收获! 一、前言算法是数据结构的灵魂!好的算法搭配上合适的数据结构,可以让代码功能大大的提升效率。当然,算法学习…

如何进行MaxCompute 用户认证?

您可以通过以下两种方式进行用户认证。 检查请求Request发送者的真实身份 即请求发送后,参数包括用户名和密码,服务端会验证用户名和密码是否正确,以此判断Request发送者的身份是否可信。 使用此方法有可能在请求时间较长的情况下&#xf…

Linux Shell脚本专栏_MySQL数据库备份_09

文章目录一、MySQL数据库备份单循环1. 安装mysql2. 配置mysql环境变量3. 刷新环境变量4. 创建数据库和表lue5. 脚本制作6. 运行脚本7. 查看备份的sql文件7. 脚本升级动态传参8. 运行脚本9. 查看备份的sql文件二、MySQL数据库表备份多循环2.1. 脚本制作2.2. 运行脚本2.3. 指定目…

【当头棒喝】你是真的了解云计算吗?

戳蓝字“CSDN云计算”关注我们哦!作者 | 全球物联网观察责编 | 阿秃对于“云计算”这个名词,大家早已耳熟能详,而且出场率越来越高!但对于很多新入行的“小白”来说,其中涉及的各种概念可能令人毫无头绪,这…

专注数据,打造阿里云Elasticsearch“一站式”数据服务体系

众所周知,Elasticsearch的问世使得各种结构、非结构数据得以实现实时搜索、分析的可能,越来越多的用户使用ES集群(即Elasticseach集群,下文均简称ES集群)实现数据的升值与挖掘。而用户在开发的过程中总是面临数据导入、…

java8 lambda maplist排序_「java8系列」流式编程Stream

前言「Java8系列」神秘的Lambda「Java8系列」神奇的函数式接口继上两篇之后,本文已经java8系列的第三篇了。本篇文章比较长,但我希望大家都能认真读完。读不完可以先收藏,在找时间读。没看过前两篇的可以点上边的链接看看,前两篇文…

Centos7 下载、安装、配置、启动部署

文章目录1. 下载tomcat2. 解压tomcat3. 重命名tomcat4. 配置tomcat环境变量5. 刷新配置文件6. 启动tomcat1. 下载tomcat wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.31/bin/apache-tomcat-9.0.31.tar.gz2. 解压tomcat [rootly-01 ~]# tar -zxf apache-tomca…

世界杯千万级直播高稳定的挑战和实践

今年夏天,俄罗斯世界杯召开。在刚刚落幕的重庆云栖飞天技术汇专场中,阿里视频云技术专家裘良科,就世界杯这个话题,跟参会嘉宾一起探讨了千万级直播高稳定的挑战和相关实践,本文为演讲全文。 2018年俄罗斯世界杯从6月14…

会议邀请 | 10月25日北京,首期D2iQ云原生主题论坛正式启动

在开始今天的内容之前,先问大家一个问题:云原生究竟是什么? 一般来说,“云原生”是一种构建和运行应用程序的方法,它利用了云计算交付模型的优势。CNCF(云原生计算基金会)将“云原生”定义为使…

Flutter快速上车之Widget

Flutter作为一种全新的响应式,跨平台,高性能的移动开发框架。从开源以来,已经得到越来越多开发者的喜爱。闲鱼是最早一批与谷歌展开合作,并在重要的商品详情页中使用上线的公司。一路走来,积累了大量的开发经验。虽然越…

Linux Shell脚本专栏_自动发布Java项目(tomcat)_10

文章目录一、需求背景及实现流程1. 需求背景2. 实现流程二、软件准备2.1. 公共工具包yum下载2.2. tomcat安装及配置2.3. maven安装及配置2.4. 安装mysql2.5. order项目配置2.6. 脚本制作2.7. 运行脚本一、需求背景及实现流程 1. 需求背景 order项目代码已经到版本仓库中&…

[Phoenix] 十、全局索引设计实践

概述 全局索引是Phoenix的重要特性,合理的使用二级索引能降低查询延时,让集群资源得以充分利用。 本文将讲述如何高效的设计和使用索引。 全局索引说明 全局索引的根本是通过单独的HBase表来存储数据表的索引数据。我们通过如下示例看索引数据和主表数…