Jekins持续集成在ERP研发中的应用实践

源宝导读:“持续集成”是敏捷最佳实践中,保证高质量交付的关键环节之一。本文将介绍明源云ERP系统在研发过程中,应用Jekins平台完成持续集成自动构建的实践。

一、认识持续集成

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

     持续集成的目的总结一句话:尽早测试、尽早发现问题,随时发布。

二、Jenkins环境部署

2.1、为什么基于jenkins进行持续集成部署

  • Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

  • Jenkins支持跨平台部署。

  • Jenkins生态非常强大,目前已有非常完备的开源插件库,满足各种所需。

2.2、Jenkins环境安装

2.2.1、依赖环境安装

  1. JDK部署:因为jenkins基于java开发,运行需要基于JDK;所以在安装jenkins程序前需要先安装JDK环境。

  2. 注意:JDK版本与Jenkins版本存在兼容性问题,请安装JDK新版本。下载地址:https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html。

  3. Git部署:代码托管在Git上,所以需要安装Git环境。下载地址:https://git-scm.com/downloads。

  4. TortoiseGit(小乌龟):用于代码拉取中调试及问题排查使用;下载地址:https://tortoisegit.org/download/。

2.2.2、Jenkins安装

    Jenkins安装部署网上非常多的教程,这里就不作详细说明,可参见:https://blog.csdn.net/qq_26344609/article/details/78253568。

2.2.3、必须插件安装:

    Jenkins环境安装好后,进行持续集成配置,一些必备的插件不能少;常用插件:

  • Git插件:用于拉取Git仓库代码:

  • Powershell插件:用于编写PowerShell脚本:

  • 批处理插件:用于编写bat脚本:

  • Inject environment环境变量:用于配置站点环境变量:

 

三、配套工具方法

3.1、环境变量配置:通常2种模式的变量设置。

  • Job内定义全局变量:用于此job所有步骤的变量:

  • 文件共享变量:适用于所有job公用的全局变量:

 

3.2、源代码拉取:通过Git插件拉取仓库源代码:

3.3、 打差异包及按版本拉取:平台推送的更新包包含两种:全量包和增量包,所以我们的拉取shell脚本需要兼容2种模式:

  

3.4、远程停止程序池\服务:代码编译完成或产品包拉取后,需要copy更新到站点,往往因为站点在运行,导致文件占用更新失败,所以在更新文件前,需要停止站点或程序池,以便释放文件:

 

3.5、同步元数据。

 

3.6、文件清理:程序更新时,有些文件需要删除,否则可能导致程序报错。

 

3.7、配置文件升级:用于web.config文件的升级处理。

 

3.8、SQL自动执行:自动执行程序包中的SQL。

 

四、展望

    本章主要针对ERP环境部署中,多子系统环境部署中,使用到的相关技术进行了介绍。这在持续集成中只属于环境更新这一环节,后续还会介绍持续集成中其他环节,比如:单测调用、质量检测、执行自动化测试等,敬请期待。

------ END ------

作者简介

熊同学: 测试专家,目前负责云ERP产品的测试工作。

也许您还想看

ERP平台的自动化测试技术实践

接口测试用例设计思路

微服务架构下的测试策略

研发协同平台持续集成实践

研发协同平台持续集成Jenkins作业设计演进

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值