Jenkins持续集成发布项目

声明:该博客仅供参考,如有技术错误欢迎指正,谢谢!

方式:本地更新代码后push到GitHub,触发Jenkins,Jenkins从GitHub钩取代码到服务器,Maven进行打包(.war文件),部署到Tomcat。
本地环境:
1、该示例的测试项目为maven管理的JavaWeb项目(含pom.xml文件);

2、需安装Git,进行测试使用;

3、其他相关安装配置不做赘述(如JDK等)。

服务器环境:

1、服务器为ubuntu_16_0402_32服务器;
2、服务器需安装JDK、Git、Maven、Tomcat、Jenkins(安装教程参阅百度);
3、教程中的Jenkins和发布的JavaWeb项目在同一服务器(Jenkins钩取代码在本地发布,如需发布到其他服务器,请查询SSH相关配置)。
操作步骤:

1、邮箱配置

说明:配置以163邮箱为例

(1)添加Jenkins的HTTP地址和系统管理员的邮件地址;

Jenkins持续集成发布项目_第1张图片


(2)配置邮件通知服务器、账户名、密码等信息;
Jenkins持续集成发布项目_第2张图片

 

(3)邮箱需开启POP3/SMTP服务和IMAP/SMTP服务;

Jenkins持续集成发布项目_第3张图片

 

提示:如需遇到密码不正确的情况,需给163设置客户端登录密码。

2、GitHub Plugin安装配置

(1)系统管理>>管理插件>>可选插件;

(2)勾选Git Plugin,下载安装,然后重启Jenkins(Jenkins会自动解决其他插件的依赖plain-credentials、Git、Credentials、github-api)。

(3)配置GitHub插件

系统管理>系统设置>GitHub

GitHub Servers中选择GitHub Server而不是AddGitHub Server

Jenkins持续集成发布项目_第4张图片

 

Jenkins持续集成发布项目_第5张图片

Jenkins持续集成发布项目_第6张图片

点击personal access token,跳转到GitHub,设置token

以下步骤为直接到GitHub设置token,非点击跳转

Jenkins持续集成发布项目_第7张图片Jenkins持续集成发布项目_第8张图片Jenkins持续集成发布项目_第9张图片

 

Jenkins持续集成发布项目_第10张图片

然后勾选“repo”,点击“Generate token”

Jenkins持续集成发布项目_第11张图片

 

点击Generate token

 

然后复制生成的token值

Jenkins持续集成发布项目_第12张图片

 

回到Jenkin点击“add”下方的Jenkins

Jenkins持续集成发布项目_第13张图片

选择Secret text,然后粘贴刚才在github中复制的token

Jenkins持续集成发布项目_第14张图片

 

然后点击Add

Jenkins持续集成发布项目_第15张图片

 

注意:如果发现Credentials添加了好几次,想删除怎么办,到首页,点击“Credentials”,在里面可以删除。

在Credentials选择刚添加的证书,然后点击“Test Connection”

如果出现上述的内容,就说明Jenkin有权限访问GitHub了

Jenkins持续集成发布项目_第16张图片
 

然后,单击apply和保存。

 

3、构建项目测试

 

上述的配置已经完成了,现在创建一个Job测试一下

创建一个freestyle的project

Jenkins持续集成发布项目_第17张图片

 

Jenkins持续集成发布项目_第18张图片

 

点击Add>>Jenkins

Jenkins持续集成发布项目_第19张图片

 

添加github的账户名和密码

Jenkins持续集成发布项目_第20张图片

 

然后选择相应的证书

Jenkins持续集成发布项目_第21张图片

 

选择githubweb源码库浏览器,并填上你的项目URL,这样每次构建都会生成对应的changes,可直接链到github上看变更详情

Jenkins持续集成发布项目_第22张图片

 

构建触发器,勾选Build when a change is pushed to GitHub,每次有代码push到GitHub都会触发Jenkins

Jenkins持续集成发布项目_第23张图片

 

填写收件人地址,如果Job构建失败,就会收到邮件

Jenkins持续集成发布项目_第24张图片

 

然后,在本地执行git push命令,触发Jenkins,然后登录Jenkins,查看构建历史,检查控制台输出是否输出Finished: SUCCESS

查看邮箱,检查是否接收到邮件。

4、Maven打包,发布到Tomcat

进入Job,点击配置

添加构建步骤

Jenkins持续集成发布项目_第25张图片

Jenkins持续集成发布项目_第26张图片

会在 /root/.jenkins/workspace/autocases/target目录下生产war文件

添加Excute Shell构建步骤

Jenkins持续集成发布项目_第27张图片

Jenkins持续集成发布项目_第28张图片

然后利用shell命令,将该war移动到Tomcat(Tomcat需一直处于启动状态)目录下。

#删除Tomcat目录下的war包和文件

rm -rf /usr/tomcat/tomcat8/webapps/autocases /usr/tomcat/tomcat8/webapps/autocases.war

#休眠5秒,等待一下
sleep 5

#将maven生成的war包移动到Tomcat下
mv /root/.jenkins/workspace/autocases/target/autocases.war /usr/tomcat/tomcat8/webapps

到这里,配置就完成了,可以通过修改代码然后push,查看发布的Tomcat的项目啦

Jenkins持续集成发布项目_第29张图片

到这里就成功打包的标志

说明:第一次构建的时间可能会有点久,因为maven需要将pom.xml中的包下载本地

可以在maven安装目录下conf下的setting中找到jar包的存放位置

Jenkins持续集成发布项目_第30张图片

在${user.home}/.m2/path/to/local/repo目录下,不过以后再次构建的时候不会再下载,直接从本地调用。

到这里就写完了,如果写的有什么不足或者遗漏的地方,欢迎补充。

说明:第一次构建的时间可能会有点久,因为maven需要将pom.xml中的包下载本地

你可能感兴趣的:(CI)