一、前言
Jenkins 的前身是是一个可扩展的持续集成引擎。主要用于:
1.持续、自动地构建/测试软件项目,如CruiseControlh和DamageControl。
2.监控一些定时执行的任务。今天就用它来快速构建一个持续化自动构建的服务。
二、系统环境##
- Jenkins2.32.2
- Maven3.3.9
- Java1.7
- Git版本控制(使用的是码云服务器:https://git.oschina.net/ )
三、Jenkins安装##
官网下载:http://jenkins-ci.org/
自己选择下载的版本,以及操作系统环境,具体安装过程不在本文的介绍范围,详见:http://blog.csdn.net/wangmuming/article/details/22925127/
四、JDK、Maven配置##
进入Jenkins主页,点击左侧的“系统管理”,如下:
再次进入“Global Tool Configuration”,分别配置JDK与Maven
点击保存,完成配置。
五、新建构建任务Job##
主页点击左侧“新建”
填入Job的名字,点击“构建一个自由风格的软件项目”
添加一些必要的描述信息,比如服务器的环境信息等;
** 源码管理** 我这里是用码云上的源代码,勾选“Git”选项,输入Repository URL以及选择Credentials(Git服务的登录信息)
构建触发器 即构建任务的触发条件与设置,我这里选择“Poll SCM”,定时轮询查询Git服务器的代码变动,代码有变动就会进行自动构建。
日程表参数解释如下:
- 第一个参数代表的是分钟 minute,取值 0~59;
- 第二个参数代表的是小时 hour,取值 0~23;
- 第三个参数代表的是天 day,取值 1~31;
- 第四个参数代表的是月 month,取值 1~12;
- 最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。
如0 * * * * 表示的就是每个小时的第 0 分钟执行一次构建。
** 构建环境** 本文介绍的是构建本地服务,此处配置未用到,在构建远程服务的时候会用到。
构建 选择增加构建步骤,我这里先配置Maven的构建环境,然后配置执行Shell脚本命令
这里的Shell脚本描述的是,从Jenkins的构建目录中复制构建好的服务jar包到我的服务运行目录,并自动执行服务运行的脚本文件
构建后操作 如果在构建以后想做一些事情,比如删除构建环境的源码与其他一些资源文件,可以在这里配置一些操作命令
至此,一个Job的配置已完成,该Job会定时10分钟一次从Git服务器拉取代码变动,如有变动则自动更新构建,并重启服务。这里需根据实际需要进行配置,如生产环境,应该在发布某个版本时进行构建,或者定时某天某时进行构建。
六、启动构建任务
手动点击下图的“立即构建”,即可立即启动一次构建任务。
此处表示了任务构建的进度,构建完成可以在控制台输出看到构建日志
我这里是一个springBoot的服务,打开浏览器输入地址与端口,即可看到服务已顺利启动
本文介绍的是构建本地服务(即Jenkins服务与项目服务在同一台服服务器上),后面会介绍如何构建远程服务器的服务。