jenkins有什么用_jenkins如何自动部署

编程语言及工具

104人已加入

描述

  Jenkins是什么

  Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具,起源于Hudson(Hudson是商用的),主要用于持续、自动的构建/测试软件项目、监控外部任务的运行(这个比较抽象,暂且写上,不做解释)。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。

  通常与版本管理工具(SCM)、构建工具结合使用;常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。

  Jenkins特性

  易于安装

  不需要安装、不需要数据库,只需通过java -jar jenkins.war或部署到一个servlet容器中

  易于配置

  所有的配置都可能通过jenkins提供的web界面完成,当然如果你喜欢,也可以通过手动修改xml文件进行配置

  生成JUnit或TestNG的测试报告

  文件识别

  jenkins能跟踪每次构建生成哪些jar包以及使用哪个版本的jar包

  分布式构建

  插件支持

  jenkins可以通过第三方插件扩展,也可以根据团队需要开发插件

  Jenkins中的任务(Job)和构建(build)

  任务(Job)是Jenkins的一个执行计划,是一系列操作的集合,构建是Jenkins的任务的一次运行。

  名词

  CI

  英文全称:Continuous Integration

  中文全称:持续集成工具

  持续集成是一种软件开发实践。在持续集成中,团队成员频繁集成他们的工作成果,一般每人每天至少集成一次,也可以多次。每次集成会经过自动构建(包括自动测试)的检验,以尽快发现集成错误。

  SCM

  英文全称:Source Control Management (Software Version Control)

  中文全称:源码控制管理软件 版本控制

  Jenkins自动编译部署web应用

  初步接触持续集成自动化过程,本篇主要介绍基于Jenkins实现持续集成的方式,通过案例介绍线上自动编译及部署的配置过程

  持续集成

  持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

  Jenkins

  Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:

  1、持续的软件版本发布/测试项目。

  2、监控外部调用执行的工作。

  更多信息请戳官网

  安装

  网上有很多Jenkins安装配置教程,详情请戳Jenkins安装与配置

  开始一个DEMO

  背景

  Jenkins运行在Linux服务器上,尝试在此服务器上编译并部署一个web应用,编译过程需要node环境,编译后文件需ssh到测试服务器

  Jenkins主要完成任务如下:

  1、自动集成编译环境

  2、线上编译应用

  3、ssh到目标环境并运行

  新建一个Job

  登录进入Jenkins,可以看到当前所有已集成项目的构建情况;

  1、点击左上角的【新建】,创建一个新任务

  jenkins

  2、填写任务名称,构建的项目类型可根据实际情况进行选择,本次选择第一种即可

  jenkins

  3、选择完毕,点击【OK】,回到首页,发现创建的Job已显示在列表中

  配置编译环境

  在这个过程中,我们需要为应用配置基于node的编译环境。

  关于安装node,一般可以下载执行文件安装或编译源码安装,而通过Jenkins,我们则可考虑使用其提供的插件进行自动安装

  1、选择系统管理-》管理插件

  jenkins

  2、可以看到,Jenkins提供了丰富的插件供开发者使用,找到我们需要的[NodeJS Plugin],勾选后点击安装即可

  jenkins

  3、安装完毕后,选择系统管理-》Global Tool Configuration,配置node下载及安装

  jenkins

  4、进入后,撸到底部,发现全局可用工具中已经出现了NodeJS的配置项

  5、插件支持多种方式安装nodeJS,点击[新建安装],选择习惯的安装方式即可,此处给出从node官网下载并安装的配置

  jenkins

  6、保存完毕后,通过列表,进入刚刚新建的Job,找到【构建环境】,勾选Provide Node & npm bin/ folder to PATH,选择刚刚添加的配置即可;此后当每次build,都会首先执行环境构建,环境构建无误后,才会开始真正的构建过程

  jenkins

  配置构建过程

  在这个过程中,我们可以配置构建所需的参数,用来指明构建的位置(从哪个分支/哪个版本。。.)或其他一些状态;并通过命令执行构建。

  1、通过列表进入Job详情,开始相关配置;

  2、【General】一栏需要配置项目基础信息和一些构建需要的参数。选择【参数化构建】,此构建方式允许我们自定义构建过程中的参数。如下:配置一个branch参数,用于指明要构建的git分支

  jenkins

  3、【源码管理】一栏需要填写待构建项目的源码地址,其中【Branches to build】用来指明待构建的分支,当然,也可以选择某个提交号,同时此处也可以使用我们在General中定义变量(详细配置见输入框右侧的[帮助]按钮)

  jenkins

  4、【构建】一栏需要输入相关命令来实现自动化构建,此过程在【环境构建】后,故我们可以编写如下代码执行构建

  jenkins

  5、线上编译完毕,下面将build完成的文件发送至目标环境(测试环境/生产环境)。继续在【构建】一栏中添加配置,指定目标环境相关信息;命令行配置ssh后的一些操作(解压文件,并删除压缩包)

  jenkins

  执行构建

  至此,整个构建的配置算是基本完成,下面开始构建。

  回到列表页,点击构建即可:

  jenkins

  可以看到构建历史列表中显示当前构建的进度

  jenkins

  点击左侧圆形按钮,即可进入控制台查看输出

  构建完毕后,可以通过列表中的晴雨状态查看构建结果

  结语

  本篇简单介绍了基于Jenkins构建的过程,Jenkins功能还有很多,会在之后的篇幅中陆续介绍。随着项目开发规模和复杂度不断增大,持续集成是一个必然的选择。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分