Jenkins的安装与配置,今天我们来讲Jenkins的构建与运行。
Jenkins的构建任务
新建任务 我们首先需要新创建一个任务,然后再赋予一个响亮的名字。 因为任务类型有好几种,像我们不被约束的撸码人,当然要选择FreeStyle project。因为自由风格的模板很灵活,可以根据不同口味进行配置。如下图:
输入project名字 ,选择project风格,点击OK按钮,就创建成功了。
丢弃旧的构建 就是自动删除构建,因为每次构建需要保存结果和日志等东西,且都会单独进行构建,久而久之就会占用系统的空间,所以需要按照一定的规则进行清理。 默认是不勾选保留全部构建,如果要删除,勾选CheckBox后,根据输入框提示填写信息即可: 1、Days to keep builds(保留构建的天数):30(根据自己的项目需要填写)。 2、Max # of builds to keep( 要保留的最大构建数量):10。
关闭构建 这个设置默认是不会关闭的,一般也不会关闭。除非有特殊情况需要在某一段时间关闭时,可以修改构建任务的配置,勾选该选项即可。 安静期:安静期就是构建前的等待时间,默认会读取系统配置的构建前等待时间,如勾选并设置对应的时间,则优先读取这个位置。 重复次数:重复次数就是当代码库获取代码失败时重新执行指定的次数,如果指定次数xxx则停止执行。
使用自定义的工作区 任务的目录默认是系统设置的主目录下面,如需要对任务指定目录,则可以勾选并设置其目录,这样就会优先使用这个目录。
源码管理 Jenkins一个重要功能就是源码管理,只要安装源码管理的插件就可以管理对应的源码。 我们一般常用的就是 svn和git这两种,安装完插件后,只需要勾选并配置对应的源码地址、账号密码、代码分支等即可。 默认设置:默认是none,即不使用任何管理工具,这种情况主要用于不需要修改代码的任务,比如: 定时执行某些脚本任务 定时执行
自动化测试脚本 git 源码管理选择git,Repository URL填写git 仓库的地址:git@url:/home/repo/test.git 格式为:【用户名】+【@】+【git服务器地址】+【:】+【git仓库地址】,我们一般使用master作为构建的代码分支。
Credentials有两种方式,一种是配置以git用户名和密码,另外一种是使用密钥对的方式, 1、使用用户名和密码来配置,点击add:
用户是拥有git仓库权限的用户,在我的git服务器上存在一个git用户,并且对该仓库拥有所有权, 2、通过ssh密钥的方式来配置:
首先客户机上进入用户主目录: #创建ssh目录 mkdir .ssh #创建密钥对,其中 -t rsa是指定秘钥的类型 ssh-keygen -t rsa
假如创建的密钥对为key (私钥) 和 key.pub(公钥),上图中的key即为key文件里复制的私钥,设置好后,将key.pub里的公钥复制到服务端对该git库拥有权限的用户主目录下的./ssh/authorized_keys文件。
Subversion:类似于git的配置,勾选Subversion,输入svn地址,输入URL和对应的账号密码就OK了。
构建触发器 配置完代码管理后,就是最关键的一步,构建触发器。 一切的构建脚本都需要满足触发器设置的条件才能执行。也就是说不设置触发器,就不会执行后续的构建的,我们先来看看触发器的类型,都有哪些: 触发器远程构建 在其他项目构建后构建 定期构建 Poll SCM 触发远程构建:这个触发器需要远程脚本或者命令触发,和手动执行是一样的,所以除非特殊情况,一般不会使用。 在其他项目构建后构建:完成某个构建任务之后执行这个构建,如同流水线的先后排序,只有完成上一步构建后,才能触发下一个任务,适用于多个关联构建任务。 定期构建:定期构建,也叫定时构建,类似于crontab脚本的配置,可以指定构建的时间,比如:每天早上8点执行或者每周一早上9点执行。 Poll SCM:这也是一个定时触发构建,与定期构建的区别在于: Poll SCM :定时检查检查源代码是否更新,只有更新了代码才会触发。 定期构建:只是定时执行,不判断代码是否更新。 都是通过日程表的配置来完成,日程表需要填入5个数值,分别是:分钟、小时、天、月、星期,并通过tab键进行分隔。 举个例子: 每20分钟进行构建一次 :20 * * * * 每天10点进行构建 :0 10 * * * 每天10点 - 18点每2个小时进行构建一次:0 10-18/2 * * *
构建环境 一般很少使用构建环境这个,仅仅了解一下即可。 Delete workspace before build starts:构建之前清理工作空间 Abort the build if it’s stuck:勾选之后如果构建出现问题,则终止构建 Add timestamps to the Console Output:给控制台输出增加时间戳 Inspect build log for published Gradle build scans:检查已发布的Gradle构建扫描的构建日志
设置构建 这个部分是Jenkins的核心,所有的任务都是通过构建完成的,可以根据需求建立一个或者多个任务,还需要点击增加构建步骤即可。这里咱主要介绍两种: Execute
Windows batch command Excute
shell Execute Windows batch command:这个是执行Windows下的命令,类似于在计算机端输入cmd。执行语句:
python D:\project\test.py
配置完后进行运行就可以了。当然,这里只拿Python举例子,
Java也可以的。 Excute shell:这里
Linux下执行的脚本命令,在linux系统安装Python或Java后,直接通过命令行运行即可。 执行语句: python /Users/pc009/desktop/project/test.py
构建本身只是一个处理过程,如果需要多个处理可以新增多个构建,只不过构建之间会有先后顺序,执行完成上一个构建才能执行下一个。 步骤: 1、新增构建a执行远程部署更新测试环境; 2、然后再新增构建b执行自动化测试脚本的运行。 以Windows为例,使用Execute Windows batch command,第一个构建执行Python的环境部署脚本,第二个构建执行Python自动化测试脚本,多个构建命令配置,如图:
构建后操作 执行完构建之后,如果需要执行一些收尾工作,可以添加构建后操作,这里就介绍几个常用的构建后操作。 bulid other projects:这是最常用的功能之一,就是完成之后执行另外一个构建任务,只需要输入已存在的项目,即可在执行完成这个构建操作后运行另外一个构建任务。 还有3个选项是触发下一个构建的条件,分别是: 只有构建稳定时触发 构建不稳定也依然触发 即便构建失败也会触发
E-mail Notification 发送邮件常用功能(不常用功能,我也不会说),只需要输入收件人的邮箱地址即可,因为之前系统设置已经配置过邮箱通知了。 同时也可以输入多个收件人,通过";"间隔,同样,邮件发送功能,也是有2个选项,如下: 每次不稳定的构建都发送邮件通知 单独发送邮件给对方构建造成不良影响的责任人
以上这两个构建后的操作,基本已经满足大部分的持续集成需求了。
运行构建任务
构建执行 配置完成之后,保存构建任务就可以执行构建了。 构建任务可以手动执行 和定时自动执行。这里主要说一下,手动执行构建,因为定时构建,在本章节的1.3.4 Poll SCM已经说过了。
手动执行 点击项目名称进入到项目,点击立即构建就可以了。
构建后日志查询 执行完构建后,在构建历史会有构建的状态,如:成功(蓝色●),失败(红色●)。 点击构建
记录,进入到构建记录页面,如下图:
点击控制台输出,可以查询构建日志信息,如下图。
点击变更记录,可以查询本次部署的内容: 如果部署没有变更内容,则就会提示没有变化; 如果部署有变更内容,则会列会变更的信息。
总结 看到这里,Jenkins的持续集成两篇博文就要接近尾声了,也说明你很有耐心呢,能把Jenkins持续集成从配置到执行构建能全看完。 随着
互联网发展,集成工具也是有好几个了,找到合适的工具才是重要的,切勿贪多。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
权威发布,测试选择不纠结!第15届软件测试行业报告,直击行业发展,把握未来方向!