转自: http://blog.sina.com.cn/s/articlelist_3053349671_14_1.html

Jenkins 简介和安装(一)

(2014-12-02 21:18:13)

 
 
 
Jenkins,之前叫做Hudson,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括:
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作
Jenkins win下安装
1.下载Jenkins 
2.安装jdk、tomcat环境
3.将Jenkins.war 部署至tomcat,启动tomcat,此时Jenkins部署成功,Jenkins的访问http://serverip:8080/jenkins,看到下面的页面Jenkins启动成功
4.Jenkins在window下的默认工作空间用户的目录下.jenkins,一般情况下我们需要自己更改一下,因为放在默认路径有些不方便,这个可以根据习好确认,我这里更改为D:\Jenkins\Jenkins。
设置系统环境变量

5.此时我们主目录配置成功,系统管理->系统配置->主目录,如下图显示

 
 
此时我们已经完整的将Jenkins的初始化工作搞得,下面我们来建立一个工程吧
 

Jenkins新建项目(二)

(2014-12-02 21:49:46)

 

我这里主要采用Jenkins 构建maven2/3项目,因为我们目前的开发语言采用的是java,而打包工具采用的maven,所以以下我配置的项目均采用的是maven2/3项目,构建Maven项目时,首先我们需要安装配置外围环境maven

1.maven环境安装,由于maven的环境配置比较简单,之前的博客也说过此处不在详解

2.Jenkins中配置maven的环境变量,Jenkins中配置环境变量的时,如果你没有安装maven可以直接安装,如果你安装maven,那么只要设置环境变量即可

如果环境中没有安装maven只要勾选自动安装,即可安装,在安装的过程中你可以选择安装的版本,而且有时候构建的项目中的maven版本不同,我们可以设置多个maven环境,只要点击新增maven即可配置

3.配置好maven以后,我们下面要配置maven的配置文件,其实这里分为局部和全局配置文件,如果你安装的maven保持默认,那么这里设置保持默认即可,如果你的maven的配置文件变更只要选择"Settings
file in filesystem",指定setting文件的位置即可。


4.此时我们要配置我们的最重要的东西jdk,他的配置跟maven的配置一样,只要指定jdk的环境变量即可,同时jdk也可以指定多个版本

目前为止我们把所以的外网环境均配置完成,熟话说磨刀不误砍柴。

5.新建maven2/3项目,输入项目的名称demo,点击OK,此时我们的项目创建完成了,那么我们创建这个项目肯定要做一些什么事情,下面我介绍我们要做的事情

下面我介绍一下Jenkins最简单的功能,获取代码,编译代码,打包,这里我们采用的是SVN作为代码管理服务器,首先我们需要在Jenkins服务器
上安装svn的客户端,并且svn可以自动获取svn服务器的代码,那么这里就有一个权限,只要在Jenkins服务器上验证通过即可,这里我不详细解释

6.源代码管理中选择SVN选择(SVN、CVS默认插件已经安装,所以插件在这里不需要安装了),只要在Repository
URL中输入SVN的路径即可,其他的详细我这里不说后面详细解释,这里只给大家解释简单的构建一个项目


7.构建maven项目build这是必须设置的,因为这里不要是对代码打包、编译的一个选项

这样我们这里构建了一个最简单的CI项目,点击保存,即完成了项目的新建工作

8.构建时我们可以点击"立即构建"或者首页的,均可以构建项目,后面我在给大家介绍项目的发布

 

Jenkins 添加sonar对代码静态检查(三)

(2014-12-03 20:58:27)

 

首先我这里要简单的对sonar有个介绍
Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量
通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测,看到这里我们是不是觉得soanr很强大呢,那么我们下来将sonar集成到Jenkins。

sonar的安装和配置请查看我的另一个博客http://blog.sina.com.cn/s/blog_b5fe6b270102v7xj.html

之前我们发布的容器的时候需要安装deploy的插件,那么我们通过sonar做静态检查的时候是否需要安装其他的插件呢,这里必须需要安装,我们需要去管理插件中安装Sonar
Plugin,直接安装即可,如果在线安装失败可以去官方下载。
soanr的插件安装完成我们需要在系统管理
->系统设置
配置下soanr的环境变量
,我们会发现在系统设置中多出了一项sonar的选项。

我想这个soanr的配置选项有点特别的简单,我这里就不一一说明了,因为我这里soanr不需要与maven集成、以及我的sonar服务器与数据库都在同一台服务器,所以关于后面的选项我们没有添加。

下面我们就可以再我们的项目中采用sonar对项目代码进行静态检查,下面我们进入项目设置中

后面没有标记的选项都是关于maven的,我这里采用了全局配置,这里就不配置了,配置完成点击保存,那么在执行任务的时候,就可以采用soanr进行代
码检查了,那么此时我们已经可以完成的构建一个CI项目了,后续我会给大家详细的介绍一下Jenkins的功能,这里只是给大家做一个快速上手和入门的工

 

Jenkins部署Web项目到远程tomcat(四)

(2014-12-03 19:11:26)

 

之前讲到的是如何构建一个项目,并且将代码进行编译、打包,那么打包完成最后的结果就需要发布到应用服务器,将项目部署成功。在之前的项目中我们采用的shell脚本来部署,下面讲解通过Jenkins部署web项目到远程tomcat。

首先Jenkins提供了一个发布的插件deploy
plugin,来帮助我们实现远程部署,这个插件默认是不安装的,所以需要我们自己手动的来安装。
手动安装deploy plugin 插件,我们可以在线安装,也可以通过官方下载相关插件,下载地址:https://updates.jenkins-ci.org/download/plugins,我这里主要是通过Jenkins在线安装。

1.系统管理->管理插件->可选插件->搜索“Deploy
to container
Plugin
”,勾选插件直接安装,等着Jenkins自动安装完成。此时我们打开我们之前新建的项目选择“增加构建后的操作”中增加了一项“Deploy
war/ear to a container",将我们的war和ear工程部署到容器。

2.我们添加一个deploy
war/ear to a container选择,Jenkins中构建后操作多出一个发布选项

WAR/EAR
files:是war包的相对路径
content path:tomcat的发布路径,即使用localhost/(content path设置的名字)来访问项目.

contaners :发布到的容器,主要可发布到tomcat、jboss、GlassFish

deploy on failure:发生错误的时候是否发布到tomcat

3.点击add contaners 添加发布的容器,我们这里要发布到tomcat,所以我这里添加的是tomcat


如果你部署的是集群环境那么可以添加多个容器来部署应用。
此时只要我们运行我们的任务即可将我们的应用发布到tomcat,记住这里要把应用服务器的防火墙关闭。
这里在多说一点tomcat默认的登录是注释的,我们需要打开。
在tomcat/conf/tomcat-users.xml下添加以下代码即可,因为之前的博客讲解过tomcat管理权限的配置,这里就不重复讲解。

Jenkins定时构建项目(五)

(2014-12-03 21:33:14)

 

之前我们说的都是手动的构建一个项目,我们是不是可以自动的来构建项目那么此时我们需要使用Poll SCM和Build periodically,我们在构建触发中选择这两项即可,其实他们两个就是一个自动任务,这里的语法也是cron的语法,没有什么特别


触发远程构建:触发远程构建
Build after other projects are
built:在其他项目触发的时候触发,里面有分为三种情况,也就是其他项目构建成功、失败、或者不稳定(这个不稳定我这里还木有理解)时候触发项目

Poll
SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。我的配置如下:

*/5 * * * * (每5分钟检查一次源码变化)
Build periodically:周期进行项目构建(它不care源码是否发生变化),我的配置如下:
0 2 * * * (每天2:00 必须build一次源码)
那么是不是有这个就很强大了,不需要我们手动的点击构建了,因为我之前在Microsoft的时候我们的项目都是半夜开始工作,到第二天早晨的时候开发查看结果即可。

有朋友就要说啦,那么我们是不是需要每天都登录上去看构建结果呢,这里我跟大家说,这个不需要,下次我给大家解释Jenkins的邮件发送功能,希望对大家有帮助

 

jenkins 配置邮件

(2015-03-03 10:55:38)

 

jenkins 自带一个邮件的通知的功能,但是自带的邮件通知功能,有点简单不能自定义信息,所以我们安装邮件插件Email-ext plugin。
1.首先在系统管理-插件管理-安装Email-ext plugin
2.系统设置中配置邮件服务器,在系统设置页面找到"邮件通知"的设置发送邮件的服务器,我这里以163邮箱为例如图

设置完成以后,我们点击Test
Configuration,发送测试邮件时候出现失败,这里因为我们首先需要设置一下发送邮件的邮箱账号,这里只是配置邮件服务器地址、账号和密码,但是jenkins不知道采用哪个邮箱去发送,在系统设置页面找到“Jenkins
Location”设置“系统管理员邮件地址”,必须与上图设置的用户保持一致。
此时我们已经把可以发送邮件了,下面我们来配置要发送的内容
3.系统设置中找到Extended E-mail Notification位置配置发送信息,下图是我自己配置的,仅供参考

具体的说明我就不解释了,字面已经说的很清楚了,这样我们就配置好邮件通知了
下面我们根据项目需要来配置发送人,以及触发条件。
4.在构建后的操作添加“Editable Email Notification”

这样jenkins的邮件通知就配置完成了。

 
 
 
 

使用Jenkins配置自动化构建

收藏:

持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了。

为了实现这个要求,我选择了Jenkins
从 http://mirrors.jenkins-ci.org/windows/latest下载windows下的最新安装版jenkins。(如果不 能安装,从http://mirrors.jenkins-ci.org/war/latest/jenkins.war下载war包,手动配置,配置说 明参见https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins)。
1.安装
这里直接使用安装包,安装过程很简单,这里就再说明了。
安装后 自动创建了一个windows服务:Jenkins,默认使用的端口是8080,如果需要修改,打开安装目录下的jenkins.xml文件,修改  <arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8081</arguments>后保存,启动jenkins服务。
打开http://192.168.0.10:8081/,看到类似下面的界面(我这里已经创建了一个任务):
说明jenkins已经安装成功。
2. 创建任务
  2.1 点“新Job”,界面如下:
输入任务名称,任意名称都可以,但最好是有意义的名称,这里输入的名称和项目名称相同为hummer
  2.2 选择项目类型,因我的项目是maven项目,这里选择“构建一个maven2/3项目”点击”OK“进入下一个界面。
  2.3 界面如下:
源代码管理根据自己的需要进行选择,我的源代码是使用svn管理的,这里选择“Subversion Modules”,在"Repository URL"录入你的svn仓库地址;第一次录入时还需要录入svn仓库的用户名和口令。
刚才的那个界面比较大,向下滚动,中间部分的界面如下:
构建触发器,我选择“Build whenever a SNAPSHOT dependency is built”,意思是依赖于快照的构建,应该是当svn有修改时就构建项目。
2.4 build设置不用修改,就使用pom.xml,目标选项也不用修改。
2.5 设置构建后的步骤,(Post Steps,可选设置 ),我这里要求构建成功后把war文件复制到指定的目录,然后停运tomcat,删除项目web目录,启动tomcat。
2.6 设置邮件通知 
勾选“E-mail Notification”,在recipients中录入要接收邮件的邮箱。
点“保存”,完成设置
3. 在工作区域的左边菜单上点“立即构建”,开始构建项目,
如果构建成功,则项目状态的S为蓝色,如果失败则为红色。
构建完成,左边菜单会显示有“控制台输出”,点击可以查看控制台详细输出。构建错误时也可以根据相应的错误信息进行修改。

Jenkins配置自动化构建的更多相关文章

  1. 使用Jenkins配置自动化构建

    持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了. 为了实现这个要求,我选择了Jenkins. 从http://mirrors.jenkins-ci.org/windo ...

  2. 用Jenkins配置自动化构建

     公司培训内容 -------------->记一笔 dubbo 微服务soadiamond-server 配置中心kafka rocketmq消息队列cas-server 单点登录spring ...

  3. gitblit系列七:使用Jenkins配置自动化持续集成构建

    1.安装 方法一: 下载jenkin.exe安装文件 下载地址:https://jenkins.io/content/thank-you-downloading-windows-installer/ ...

  4. Jenkins配置项目构建后的钉钉通知

    首先在任意一个钉钉群里创建自定义的钉钉机器人,然后能够看到钉钉开放的webhook 复制webhook Jenkins中安装钉钉插件,然后在项目的配置当中,构建后操作里添加钉钉报警 url一般默认已经 ...

  5. Jenkins配置项目构建的钉钉通知

    在任意一个钉钉群里创建自定义的钉钉机器人,然后能够看到钉钉开放的webhook,复制webhook. Jenkins中安装钉钉插件,然后在项目的配置当中,构建后操作里添加钉钉报警. 安装钉钉通知插件 ...

  6. 如何用jenkins实现自动化构建新版本和二维码下载

    最近公司开发了自己的app,研发过程中对于测试人员来说,经常会像开发的人员询问,有没有最新的包啊(apk打包后的新版本),以免你测试的时候,提交了一些缺陷,实际上人家已经解决了.当然你也可以说你们公司 ...

  7. 使用Jenkins+gitlab自动化构建时排除分支

    我们的目的是gitlab上的代码有变动时会自动向Jenkins发送web钩子请求,触发指定的动作: 但默认情况下,所有分支(如测试环境和预生产)的代码有变动时都会触发,此时可以在Jenkins的项目设 ...

  8. jenkins配置RF构建结果显示

    声明:转载请注明出处,谢谢 步骤1:安装robot framework plugin插件:系统管理-管理插件 步骤2:设置构建后操作:job-配置-构建后操作增加“Publish Robot Fram ...

  9. Jenkins配置定时构建项目

    general: 源码管理: 构建触发器: 构建后操作:

随机推荐

  1. JMap与JStack

    用JMap和JStack做堆dump和线程dump 命令 1. jmap -dump:format=b,file=filename pidjmap -dump:format=b,file=jmap02 ...

  2. Arcgis ArcMap 10 如何生成msd地图文档定义【 arcgis mxd怎么转换成msd】

    .mxd是arcgis 的地图文档后缀名. .msd是arcgis 的地图服务定义文件,是 map service definition 的缩写. 基于 MSD 的服务支持 Maplex.制图表达和新 ...

  3. 混沌分形之逻辑斯蒂(Logistic)映射系统

    前几天,有个同事看到我生成的一幅逻辑斯蒂分岔图像后,问我:“这是咪咪吗?”我回答:“淫者见淫.”好吧,这里将生成几种分岔映射图形,包括逻辑斯蒂映射系统,正弦映射系统和曼德勃罗映射系统.实际上这几种图形 ...

  4. 解决easyui combobox不能默认选中

    开始出现很奇怪的问题,ff没有问题IE8还是会出现不能选中默认项的问题,更改了select.input的方式,数据加载方式也更改为json的方式,未果,最后将datagrid toolbar的初始化放 ...

  5. tensorflow语义分割api使用(deeplab训练cityscapes)

    安装教程:https://github.com/tensorflow/models/blob/master/research/deeplab/g3doc/installation.md citysca ...

  6. 【Java】SAX解析characters 错误截取问题的解决

    SAX解析characters 错误截取问题的解决 SAX characters bug_百度搜索 SAX解析characters 错误截取问题的解决 - CSDN博客 [Android]SAX解析之 ...

  7. 【Scala】Scala多线程-并发实践

    Scala多线程-并发实践 scala extends Thread_百度搜索 scala多线程 - 且穷且独立 - 博客园 Scala和并发编程 - Andy Tech Talk - ITeye博客 ...

  8. Tensorflow-3-使用RNN生成中文小说

    https://blog.csdn.net/heisejiuhuche/article/details/73010638 这篇文章不涉及RNN的基本原理,只是从选择数据集开始,到最后生成文本,展示一个 ...

  9. RefreshListView中onItemClick点击错位

    在使用RefreshListView的时候.发现有使用 /**** * parent.getAdapter().getItem(position)√ * adpter.getItem(id);√ * ...

  10. (纪录片)你必须知道的科学 The Science That You Have To Know (2014)

    简介: 类型: 纪录片制片国家/地区: 英国语言: 英语上映日期: 2014-2片长: 150分钟 主要内容: 你有没有认真想过,自己的身体有多奇妙?人体是世间最复杂的一项工程杰作,他也带来了一些非常 ...