插件系列--Jenkins

其他网址

自动化部署--Jenkins--简介安装(一) - 简书
Jenkins详细教程_A1229451567的博客-CSDN博客_jenkins a使用
Jenkins的详细安装及使用_hc_ttxs的博客-CSDN博客_jenkins安装

简介

Jenkins说明

官网:https://jenkins.io/

        Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的)。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。

作用

  1. 持续、自动的构建/测试软件项目
  2. 监控外部任务(比如定时任务)的运行

但不局限于这两点,例如Jenkins还能远程部署、异常处理监控等。

特点

  1. 易于部署:可在Tomcat等流行的servlet容器中运行(把jenkins.war部署进去),也可独立运行。
  2. 易于配置:所有配置都是通过其提供的web界面实现。
  3. 集成RSS/E-mail:通过RSS发布构建结果或当构建完成时通过e-mail通知。
  4. 生成JUnit/TestNG测试报告。
  5. 分布式构建支持:Jenkins能够让多台计算机一起构建/测试。
  6. 文件识别:Jenkins能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。
  7. 插件支持:支持扩展插件,你可以开发适合自己团队使用的工具。
  8. 支持Maven的模块(Module):Jenkins对Maven做了优化,因此它能自动识别Module,每个Module可以配置成一个job,相当灵活。
  9. 测试报告聚合:所有模块的测试报告都被聚合在一起,结果一目了然,使用其他CI,这几乎是件不可能完成的任务。
  10. 构件指纹(artifact fingerprint):每次build的结果构件都被很好的自动管理,无需任何配置就可以方便的浏览下载。

CI

        CI(Continuous integration,中文意思是持续集成)是一种软件开发时间。持续集成强调开发人员提交了新代码之后,立刻进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。如下图所示

CD

        CD(Continuous Delivery, 中文意思持续交付)是在持续集成的基础上,将集成后的代码部署到更贴近真实运行环境(类生产环境)中。比如,我们完成单元测试后,可以把代码部署到连接数据库的Staging环境中更多的测试。如果代码没有问题,可以继续手动部署到生产环境。下图反应的是CI/CD 的大概工作模式。

下载与部署

环境准备

JDK:
maven:
SVN:

1.下载

https://jenkins.io/download/

下载war包

2.部署

法1:部署到tomcat

将jenkins.war放进tomcat/webapps

法2:单独运行

java -jar jenkins.war --httpPort=8081

 此种方法运行需要修改端口,默认是8080与Tomcat冲突。
法1:用--httpPort指定,例如:--httpPort=8081
法2:修改配置文件。
        windows:jenkins.xml,修改--httpPort项
        Linux:/etc/sysconfig/jenkins,修改JENKINS_PORT

初始化

设置密码

登入http://localhost:8081/jenkins,进入Jenkins初始化页面,第一次启动时间可能有点长,耐心等待。进入成功后会看到如下画面,按提示路径打开密码文件,输入密码:

安装插件

登录进去后提示安装插件,安装推荐插件即可。

可能失败,如下图所示。
失败原因:插件需要连到外网,如连接不到外网,跳过插件安装即可:点击Skip Plugin Installations。

之后可以在管理界面安装插件:

  1. Jenkins-->系统管理--->管理插件进入插件下载、安装界面
  2. 搜索
    Subversion Plug-in实现svn的功能
  3. 选择下载待重启后安装或直接安装

创建管理员

实例配置

采用默认即可

系统设置

前边设置成功后即进入Jenkins主界面:

 点击左上侧系统管理,进入Jenkins基本系统设置(主要是以下三块)

管理插件

先进入“管理插件”模块安装必需的插件,以下是建议安装列表:

build timeout plugin
Deploy to container Plugin
Email Extension Plugin
GitHub Branch Source Plugin
Gradle Plugin
Pipeline
Pipeline:GitHub Groovy Libraries
Report Info Plugin
SSH Slaves plugin
Static Analysis Collector Plug-in
Subversion Plug-in
Timestamper
Workspace Cleanup Plugin

插件默认保存位置:C:\Users\Administrator\.jenkins\plugins

系统设置

添加编码全局属性:

 

增加系统管理员邮件地址:

其他的可用默认配置,保存后退出。

全局配置

配置JDK,不采用自动安装:

配置maven,不采用自动安装:

系统部署

开始添加任务,任务类型选择自由风格:

创建完成后可在主页看到如下画面:

 在”All” tab下能看到新建的任务,点击该任务,进入该任务的配置页面:

设置项目备注及构建规则:

配置项目轮询的源码位置(@HEAD表示构建最新的代码)并配置代码访问密码:

配置构建触发器,如下图配置为每天晚上9:30开始构建(Cron表达式):

增加Invoke top-level Maven targets构建步骤,插件目标为编译、发现编译Bug、部署,另外还可以配置构建时忽略测试用例: 

增加构建后操作步骤:Publish FindBugs analysis results,用于查看FindBugs插件的代码分析报告,该模块可采用默认配置:

增加构建后操作步骤:Deploy war/ear to a container,用于将构建后生成的war包部署至tomcat服务器,下图中Contextpath用于配置项目访问路径,如填/RMS_Server则表示项目的根访问目录为:http://localhost:8080/RMS_Server,Deploy on failure用于配置当前构建失败时是否仍然部署至tomcat,默认不选:

以上即为本项目的所有配置,完成后应用(或保存)并退出。

配置完成后即可开始构建,左侧可查看bugs分析信息及构建历史:

 点击某个构建记录,如上图中的#31,即可查看构建日志、SVN代码提交日志及bugs分析结果:

编码问题

FindBugs分析报告中查看某些代码文件时可能出现中文乱码情况,如下图:

这是tomcat的编码问题导致的,可在系统管理中查看tomcat的相关编码情况:

主要关注的是file.encoding属性及sun.jnu.encoding属性,二者需要设置为UTF-8以兼容中文:

这可通过在tomcat配置文件/bin/catalina.bat文件中添加set “JAVA_OPTS=-Dfile.encoding=UTF-8-Dsun.jnu.encoding=UTF-8”命令实现,如下图:

配置完成后重启tomcat,可看到编码已经更改:

      
 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章