目录
5. 项目自动化部署测试
5.1 创建工程
5.2 基础配置
5.2.1Genneral
5.2.2 源码管理
5.2.3 构建触发器
5.2.4 构建环境
5.2.5 PreSteps
5.2.6 Bulid
5.2.7 PostSteps
5.2.8 构建设置
5.2.9 构建后操作
5.3 立即构建
6. 总结
6.1 Jenkins 作用
6.1.1持续集成
6.1.2持续集成优点
6.1.3 持续集成的目的
6.1.4 持续交付
6.1.5 持续部署
6.1.6 持续集成实施流程
6.2 相关资料
5. 项目自动化部署测试
- 在前面所有的基础工作都搭建完成之后,我们终于可以开始创建项目实现自动化部署了,这里我们采取的架构体系是springBoot+Maven+SVN的项目。
- 项目的部署工作大体分为 创建工程—>基础配置—>立即构建。
5.1 创建工程
-
-
5.2 基础配置
-
- 仅需填写标准部分,其他部分可不做多考虑。
-
5.2.1Genneral
-
5.2.2 源码管理
5.1 创建工程
5.2 基础配置
- 仅需填写标准部分,其他部分可不做多考虑。
-
5.2.1Genneral
-
5.2.2 源码管理
SVN的账号密码,在这里设置成了密钥,如果没有密钥,点击后面的【添加】按钮设置密钥。
点击“添加”按钮添加一组账号和密码
-
-
5.2.3 构建触发器
-
触发远程构建(例如,使用脚本):该选项会提供一个接口,可以用来在代码层面触发构建。如上图:当前项目的回调地址为:
http://47.xxx.xxx.xx:8080job/springBoot+Maven+svn/build?token=token_test01
只要执行这个地址(在浏览器上访问改地址),该项目就会发起一次构建项目,即拉取代码打包部署操作。
Build after other projects are built: 该选项意思是"在其他projects构建后构建"。这里不作介绍,后期可能会用到该选项。
Build periodically:周期性的构建。很好理解,就是每隔一段时间进行构建。日程表类似linux crontab书写格式。如上图的设置,表示每隔30分钟进行一次构建。
Poll SCM:该选项是配合上面这个选项使用的。当代码仓库发生改动,jenkins并不知道。需要配置这个选项,周期性的去检查代码仓库是否发生改动。
6.1 Jenkins 作用
开源的持续集成工具,由java开发而成。调度平台,本身不处理任何事情,调用插件完成所有的工作。
主要功能:提供软件开发的持续集成服务。
主要特点:配合实现 软件配置管理、持续集成功能、拥有成千上万的插件
6.1.1持续集成
-
-
5.2.4 构建环境
-
暂时不用,保持默认就行。
-
5.2.5 PreSteps
- 暂时不用,保持默认就行。
-
5.2.6 Bulid
-
-
Goals and options指定的就是以何种命令进行编译。
-
-
5.2.7 PostSteps
-
5.2.8 构建设置
-
5.2.9 构建后操作
-
上图中jenkins服务器工作区的全目录是:
/root/.jenkins/workspace/springBoot+Maven+svn/pzzhsj-admin/target/pzzhsj-admin.jar
在服务器上执行的命令
#!/bin/sh
#进入jar所在路径
cd /chen/target
#查看运行记录,并停止进程
ps aux | grep java | grep pzzhsj-admin.jar |grep -v grep | awk '{print $2}'| xargs kill -9#启动运行程序
/usr/java/jdk1.8.0_161/bin/java -jar /chen/target/pzzhsj-admin.jar > pzzhsj-admin.log &
这里还特别注意一点,需要将Publish over SSH 配置中的SSH server 配置项中的 Use password authentication,or use a different key 选项打上勾。
-
5.3 立即构建
-
至此,我们的项目所需要的准备工作已经完全搭建好了,接下来就开始构建(Build Now)项目了。
-
-
-
6. 总结
-
频繁的将代码提交到主干(重复的进行集成工作),代码提交到主干前先进行自动化测试。
6.1.2持续集成优点
1.快速发现错误;
2.节省人力成本;
3.加快软件开发速度;
4.实时交付;
5.防止分支大幅偏离主干
6.1.3 持续集成的目的
1.产品快速迭代,还能保证产品质量。
2.简化工作流程
6.1.4 持续交付
持续交付是在持续集成环境的基础上,将代码手动部署到预生产环境。
持续交付:代码开发->单元测试->合并代码->测试->手动部署到生产
6.1.5 持续部署
持续部署:在持续交付的基础上 自动将代码部署到生产环境
持续部署:代码开发->单元测试->合并代码->测试->自动部署到生产
6.1.6 持续集成实施流程
提交代码->代码托管->获取代码->代码测试->构建->黑盒测试->部署->回退
6.2 相关资料
官方文档:Jenkins 用户手册
jenkins相关插件下载地址:
https://mirror.tuna.tsinghua.edu.cn/jenkins/


![基于Linux环境下Jenkins自动化部署【springBoot+Maven+SVN】详细教程(四)——自动化部署测试[图文超细] 基于Linux环境下Jenkins自动化部署【springBoot+Maven+SVN】详细教程(四)——自动化部署测试[图文超细]](http://www.mshxw.com/aiimages/31/632598.png)
