搭建Jenkins+Github集成环境
一、进入Jenkins在浏览器输入网址:http://localhost:8080/jenkins/,进入Jenkins;二、新建项目首页左侧点击”新建“,输入项目名称和指定构建什么类型的项目,这里选择构建一个自由风格的软件项目;三、项目配置点击进入新建的项目,进行配置;1 源码管理选择Git,因为本文主旨就是搭建Jenkins+
一、进入Jenkins
在浏览器输入网址:http://localhost:8080/jenkins/,进入Jenkins;
二、新建项目
首页左侧点击”新建“,输入项目名称和指定构建什么类型的项目;
其中,
构建一个自由风格的软件项目:Jenkins主要功能,结合任何SCM和任何构建系统构建项目,甚至可以构建软件以外的系统
构建一个maven项目:Jenkins利用指定POM.xml文件,大大减轻构建配置
构建一个多配置项目:如多环境测试、平台指定构建等
监控一个外部的任务:允许记录执行在外部Jenkins的任务,任务甚至运行在远程机器上
复制已存在的job:
这里,选择构建一个自由风格的软件项目;
三、项目配置
点击进入新建的项目,进行配置;
0 基本配置
丢弃旧的构建:可以只保留几天内的构建历史或只保留几个构建历史
参数化构建过程:可以配置参数,每次执行构建时需要给参数赋值
关闭构建:重新开启构建前不允许进行新的构建
在必要时并发构建:
Restrict where this project can be run:当配置slave节点后,通过该选择执行构建的节点,可以是master主机或slave节点
1 高级配置
安静期:一个任务计划中的构建在开始前需要读取开始前的配置信息;不选中则使用系统默认值
重复次数:若从版本库签除代码失败,则Jenkins会按指定次数重试后再放弃
该项目的上游项目正在构建时阻止该项目构建:当项目有依赖关系时,需要勾选
该项目的下游项目正在构建时阻止该项目构建:
使用自定义的工作空间:每个Jenkins任务都会有唯一一个工作空间目录,下载源代码,构建的整个过程都是在这个工作空间中
显示名称:仅供Jenkins Web页面显示
2 源码管理
Jenkins支持多种源码管理服务器;
这里选择Git,因为本文主旨就是搭建Jenkins+Github环境;
其中,
Repository URL是你的Github上代码更新会触发Jenkins的repo的ssh key;
Credentials是权限认证,需要添加,即输入访问该repo的用户名和密码;
源码库浏览器是该repo的URL,是可选的;
3 构建触发器
根据项目需要,选择触发Jenkins的方式;
其中,
Trigger builds remotely (触发远程构建,如使用远程脚本触发自动构建):可通过电子邮件触发项目构建,或通过脚本提交一个构建请求
Build after other projects are built (在其他项目构建完成后执行该构建):可设置多个依赖的jobs,当任意一个依赖的job成功构建后启动此构建,多个依赖的jobs之间用","隔开
Build periodically (定期构建):不管源码是否有更新,周期构建,在”日程表“中定义触发时间
Build when a change is pushed to Github (当源码更新推送到Github后执行该构建):
Poll SCM (定期检查源码是否更新):定时检查源码更新,有更新则执行构建,没有更新就不执行;在”日程表“中定义触发时间
其中,日程表用空格或Tab键分隔5个字段,分别代表"MINUTE(分钟,0~59)", "HOUR(小时,0~23)", "DOM(日,1~31)", "MONTH(月,1~12)", "DOW(星期,0~7)";
这里,选择Poll SCM,参数值为"H/2 * * * *",即设置每2分钟检查Github的指定repo有无源码更新;
(PS:对于Build when a change is pushed to Github,目前还没成功过);
4 构建环境
根据需要进行选择;
Delete workspace before build starts:构建执行前删除工作区
Abort the build if it's stuck:如果构建卡住,中止该构建
Add timestamps to the Console Output:在控制台添加时间戳
Use secret text(s) or file(s):使用密文
这里,选择添加时间戳;
5 构建
Execute Windows batch command:执行Windows命令行,默认当前路径是当前job的workspace
Execute shell:运行shell、python、perl、ruby等脚本
Invoke Ant:调用Ant构建
Ant Version:指定使用的Ant版本,下拉列表中显示系统配置中配置的所有Ant版本,不要选择Defualt
Targets:指定需要执行的Target,不填写时默认执行build脚本中的Default target
Build File:指定需要执行的build脚本文件,可使用绝对路径或相对路径,默认相对路径根目录是当前任务的workspace
Properties:指定Ant变量
Java Options:若需要添加用户自定义的ANT_OPTS,在这里添加,如-Xmx512m
Invoke top-level Maven targets:调用Maven构建
Maven Version:指定所使用的Maven版本
Goals:执行的Maven命令行,不需要加mvn
POM:指定pom.xml文件
这里,构建执行一个python程序;
6 构建后操作
Aggregate downstream test result:整合Downstream测试
Archive the artifacts:将生成的文件存档,如.zip/.jar文件,以备以后下载用
Build other projects:最常用操作,在一个构建任务完成后,可触发另一个构建任务,如部署任务完成后可触发下游任务自动化测试;根据不同场景选择不同的触发方式
Publish JUnit test result report:将JUnit Test报告打印到展示平台
Publish Javadoc:打印Javadoc
Record fingerprints of files to track usage:Jenkins记录一个文件的指纹,用来追踪该jar包是什么时间打的
Deploy war/ear to a container:将包部署到一个容器上,目前支持Tomcat、JBoss、Glassfish
WAR/EAR files:需要部署的war/ear包的文件,需要指定目录
Context path:
Container:选择容器,包括容器的对应版本
Manage user name:管理员的用户名
MAnager password:管理员的密码
Tomcat URL:Tomcat URL地址
Deploy on failure:配置任务失败时是否仍然部署
Email Notification:邮件通知
Editable Email Notification:
四、执行构建
1 手动执行
点击"立即构建(build now)";
执行结果:
2 自动执行
在Github指定repo上有源码更新,必须从本地push到远程主机;
更新到远程主机之后2分钟,Jenkins检测有更新,则自动触发构建执行;
执行结果:
更多推荐
所有评论(0)