一种持续集成的方法及装置与流程

文档序号:13674152阅读:117来源:国知局
技术领域本发明涉及计算机技术领域,特别涉及一种持续集成的方法及装置。

背景技术:
随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题。尤其是近些年来,敏捷在软件工程领域越来越红火,如何能再不断变化的需求中快速适应和保证软件的质量也显得尤其的重要。持续集成正是针对这一类问题的一种软件开发方法,开发人员需要经常集成他们的工作,甚至每天都可能发生多次集成。现有技术中的集成方法中,需要开发人员进行大量的人工操作,集成过程比较复杂。

技术实现要素:
本发明实施例提供了一种持续集成的方法及装置,能够使得集成过程更加简单。一方面,本发明提供了一种持续集成的方法,包括:预先搭建Jenkins平台,在所述Jenkins平台上配置Maven,预先在所述Jenkins平台上配置发布机制,还包括:S1:向所述Jenkins平台提交待集成源码;S2:通过所述Maven将所述待集成源码构建为待发布代码;S3:触发所述发布机制,通过所述Jenkins平台发布所述待发布代码。进一步地,所述预先搭建Jenkins平台,包括:获取jenkins.war文件,运行所述jenkins.war文件中的java-jarjenkins.war。进一步地,该方法还包括:预先构建Git;所述S1,包括:将所述待集成源码上传到所述Git,通过所述Git向所述Jenkins平台提交待集成源码。进一步地,所述S3中的所述触发所述发布机制,包括:通过hook触发所述发布机制。进一步地,在所述S3之后,还包括:验证所述待发布代码是否发布成功。另一方面,本发明提供了一种持续集成的装置,包括:搭建单元,用于搭建Jenkins平台,在所述Jenkins平台上配置Maven,在所述Jenkins平台上配置发布机制;提交单元,用于向所述Jenkins平台提交待集成源码;第一构建单元,用于通过所述Maven将所述待集成源码构建为待发布代码;发布单元,用于触发所述发布机制,通过所述Jenkins平台发布所述待发布代码。进一步地,所述搭建单元,在执行所述预先搭建Jenkins平台时,具体用于:获取jenkins.war文件,运行所述jenkins.war文件中的java-jarjenkins.war。进一步地,该装置还包括:第二构建单元,用于预先构建Git;所述提交单元,用于将所述待集成源码上传到所述Git,通过所述Git向所述Jenkins平台提交待集成源码。进一步地,所述发布单元,在执行所述触发所示发布机制时,具体用于通过hook触发所述发布机制。进一步地,该装置还包括:验证单元,用于验证所述待发布代码是否发布成功。通过本发明实施例提供了一种持续集成的方法及装置,搭建Jenkins平台,在Jenkins平台上配置Maven,将待集成源码提交给Jenkins平台,通过Maven构建待发布代码,通过Jenkins平台发布待发布代码,该过程无需通过人工进行操作,使得集成过程更加简单。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明一实施例提供的一种持续集成的方法的流程图;图2是本发明一实施例提供的另一种持续集成的方法的流程图;图3是本发明一实施例提供的一种持续集成的装置的示意图;图4是本发明一实施例提供的另一种持续集成的装置的示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1所示,本发明实施例提供了一种持续集成的方法,该方法可以包括以下步骤:S0:预先搭建Jenkins平台,在所述Jenkins平台上配置Maven,预先在所述Jenkins平台上配置发布机制;S1:向所述Jenkins平台提交待集成源码;S2:通过所述Maven将所述待集成源码构建为待发布代码;S3:触发所述发布机制,通过所述Jenkins平台发布所述待发布代码。通过本发明实施例提供了一种持续集成的方法,搭建Jenkins平台,在Jenkins平台上配置Maven,将待集成源码提交给Jenkins平台,通过Maven构建待发布代码,通过Jenkins平台发布待发布代码,该过程无需通过人工进行操作,使得集成过程更加简单。在一种可能的实现方式中,所述预先搭建Jenkins平台,包括:获取jenkins.war文件,运行所述jenkins.war文件中的java-jarjenkins.war。Jenkins平台还提供了非常丰富的插件支持,可以方便的安装各种第三方插件,能够更加方便快捷的集成第三方的应用。Jenkins平台提供了丰富的管理和配置的功能,包括系统配置、管理插件、查看系统信息、系统日志、节点管理、Jenkins命令行窗口、信息统计等功能。在一种可能的实现方式中,该方法还包括:预先构建Git;所述S1,包括:将所述待集成源码上传到所述Git,通过所述Git向所述Jenkins平台提交待集成源码。在一种可能的实现方式中,所述S3中的所述触发发布机制,包括:通过hook触发所述发布机制。在一种可能的实现方式中,在所述S3之后,还包括:验证所述待发布代码是否发布成功。在该步骤中,如果发布不成功,可以返回步骤S1,重新进行发布。还可以输出日志信息,输出发布不成功的原因。通过本发明实施例提供的一种持续集成的方法,能够大大减少开发人员在集成过程中的工作量,使开发人员更加专注于业务逻辑实现上。另外,通过Jenkins平台,还能够实时监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。通过本发明实施例能够实现自动构建过程,包括自动编译、分发、部署和测试等,通过本发明实施例能够实现代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。本发明实施例提供的一种持续集成的方法中每个步骤都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量。通过本发明实施例能够保证在任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能。为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。如图2所示,本发明实施例提供了一种持续集成的方法,该方法可以包括以下步骤:步骤201:预先搭建Jenkins平台,在所述Jenkins平台上配置Maven,预先在所述Jenkins平台上配置发布机制,预先构建Git。其中,可以构建Git服务器来实现Git。Maven可以作为Jenkins平台上的插件。这里的发布机制可以包括:发布条件,当满足发布条件后,进行发布。步骤202:将所述待集成源码上传到所述Git,通过所述Git向所述Jenkins平台提交待集成源码。步骤203:通过所述Maven将所述待集成源码构建为待发布代码。步骤204:通过hook触发所述发布机制,通过所述Jenkins平台发布所述待发布代码。如图3、图4所示,本发明实施例提供了一种持续集成的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种持续集成的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种持续集成的装置,包括:搭建单元401,用于搭建Jenkins平台,在所述Jenkins平台上配置Maven,在所述Jenkins平台上配置发布机制;提交单元402,用于向所述Jenkins平台提交待集成源码;第一构建单元403,用于通过所述Maven将所述待集成源码构建为待发布代码;发布单元404,用于触发所述发布机制,通过所述Jenkins平台发布所述待发布代码。在一种可能的实现方式中,所述搭建单元401,在执行所述预先搭建Jenkins平台时,具体用于:获取jenkins.war文件,运行所述jenkins.war文件中的java-jarjenkins.war。在一种可能的实现方式中,该装置还包括:第二构建单元,用于预先构建Git;所述提交单元402,用于将所述待集成源码上传到所述Git,通过所述Git向所述Jenkins平台提交待集成源码。在一种可能的实现方式中,所述发布单元404,在执行所述触发所示发布机制时,具体用于通过hook触发所述发布机制。在一种可能的实现方式中,该装置还包括:验证单元,用于验证所述待发布代码是否发布成功。上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。需要说明的是:本发明实施例提供的一种持续集成的方法及装置,可以是基于Kubernetes来实现的。本发明实施例提供的一种持续集成的方法及装置,具有如下有益效果:1、通过本发明实施例提供了一种持续集成的方法及装置,搭建Jenkins平台,在Jenkins平台上配置Maven,将待集成源码提交给Jenkins平台,通过Maven构建待发布代码,通过Jenkins平台发布待发布代码,该过程无需通过人工进行操作,使得集成过程更加简单。2、通过本发明实施例提供的一种持续集成的方法及装置,能够大大减少开发人员在集成过程中的工作量,使开发人员更加专注于业务逻辑实现上。另外,通过Jenkins平台,还能够实时监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。3、通过本发明实施例提供的一种持续集成的方法及装置,能够实现自动构建过程,包括自动编译、分发、部署和测试等,通过本发明实施例能够实现代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。4、本发明实施例提供的一种持续集成的方法及装置,能够自动完成待集成源码的集成,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量,通过本发明实施例提供的一种持续集成的方法及装置,能够保证在任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能。需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1