一种基于持续集成的软件包交付方法及装置制造方法及图纸

技术编号:15724421 阅读:49 留言:0更新日期:2017-06-29 10:10
本发明专利技术实施例公开了一种基于持续集成的软件包交付方法,实时将开发人员提交的审查成功的代码发送至代码库,当检测当满足预设条件时,将代码库中不同的代码进行组合构建软件包,对该软件包进行集成测试,并将构建的软件包发送至软件库;然后将软件库中的通过集成测试的若干个软件包构建为ISO包,通过PXE将该ISO包进行装机,对其进行系统测试,最后将通过系统测试的ISO包进行交付。实现了全自动化的持续集成,有效的缩短了研发周期,提高了软件包交付的效率,节省了大量的人力、财力以及物力,具有好的社会经济效率。此外,本发明专利技术实施例还提供了相应的实现装置,进一步使得所述方法更具有实用性,所述装置具有相应的优点。

【技术实现步骤摘要】
一种基于持续集成的软件包交付方法及装置
本专利技术实施例涉及软件开发
,特别是涉及一种基于持续集成的软件包交付方法及装置。
技术介绍
随着计算机技术的飞速发展,软件开发技术也得到了相应的发展。软件开发是根据用户要求建造出软件系统或系统中的软件部分的过程,包括需求捕捉、需求分析、设计、实现和测试,通常通过某种程序设计语言(例如C语言、JAVA语言)来实现。软件开发过程可为设计软件的功能和实现的算法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。现有的软件在研发之前,一般根据需求将整个软件开发划分为多个模块,各模块研发完成后,将各个模块通过接口进行连接,以使各模块间进行通信。尽快这种开发模式实现了各模块间的低耦合,但是在该模式中,只有在所有的代码都开发完成之后然可集成到一起进行测试以及进行bug收敛。随着软件技术的发展,软件规模的扩大,架构和技术路线的复杂化,这种瀑布式的开发方式的弊端越来越明显,例如早期的bug往往到最后集成的时候才会被发现,从而导致修复bug变得复杂甚至牵扯到底层架构调整,严重时会导致整个软件的研发失败,重新进行研发,进而导致整个软件研发周期增长,浪费了大量的人力以及财力。因此,如何有效的缩短软件的研发周期,提高软件包交付效率,是本领域技术人员亟待解决的问题。
技术实现思路
本专利技术实施例的目的是提供一种基于持续集成的软件包交付方法及装置,有效的缩短了软件研发周期,提高了软件包的交付效率。为解决上述技术问题,本专利技术实施例提供以下技术方案:本专利技术实施例一方面提供了一种基于持续集成的软件包交付方法,包括:从代码审查平台获取审查成功的代码,并将其发送至代码库;当满足预设条件时,在所述代码库中选取不同的代码构建预设格式的软件包,将所述软件包发送至项目软件库,并在用户搭建的测试环境中,对所述软件包进行集成测试;在所述项目软件库中选取通过集成测试的软件包构建ISO包,通过PXE服务器将所述ISO包安装在物理机上,向所述物理机发送运行测试脚本的指令,以对所述ISO包进行系统测试;将通过系统测试的ISO包交付所述用户。可选的,所述在所述项目软件库中选取通过集成测试的软件包构建ISO包包括:检测持续集成系统的负载数目;当检测到所述持续集成系统的负载数目不大于预设阈值时,在所述项目软件库中选取通过集成测试的软件包构建ISO包。可选的,所述在所述项目软件库中选取通过集成测试的软件包构建ISO包包括:在预设时间从所述项目软件库中选取通过集成测试的软件包,构建ISO包。可选的,述预设条件为:检测到代码进入所述代码库或当前时间为预设时间。可选的,所述通过PXE服务器将所述ISO包安装在物理机上包括:获取所述用户为所述PXE服务器配置的文件信息;根据所述文件信息对DHCP、TFTP以及Kickstart进行配置,并将各自的配置文件发送至相应的服务器中;所述PXE服务器将所述ISO包,经过所述TFTP服务器下载至所述物理机中;利用所述Kickstart服务器将所述ISO包安装至所述物理机。可选的,所述将其发送至代码库包括:判断当前代码是否与所述代码库中的代码相同;当判定所述当前代码与所述代码库中的代码不相同时,将所述代码发送至所述代码库。可选的,所述从代码审查平台获取审查成功的代码,并将其发送至代码库包括:获取用户上传至所述代码审查平台的代码;当接收到所述用户对所述代码审阅通过的指令后,对所述代码进行代码格式检查、编译检查以及在所述用户搭建的测试环境中,对所代码进行单元测试;将经过代码格式检查、编译检查以及单元测试的代码发送至代码库。本专利技术实施例另一方面提供了一种基于持续集成的软件包交付装置,包括:代码入库模块,用于从代码审查平台获取审查成功的代码,并将其发送至代码库;集成测试模块,用于当满足预设条件时,在所述代码库中选取不同的代码构建预设格式的软件包,将所述软件包发送至项目软件库,并在用户搭建的测试环境中,对所述软件包进行集成测试;系统测试模块,用于在所述项目软件库中选取通过集成测试的软件包构建ISO包,通过PXE服务器将所述ISO包安装在物理机上,向所述物理机发送运行测试脚本的指令,以对所述ISO包进行系统测试;交付模块,用于将通过系统测试的ISO包交付所述用户。可选的,所述系统测试模块包括:监控单元,用于检测持续集成系统的负载数目;构建单元,用于当检测到所述持续集成系统的负载数目不大于预设阈值时,在所述项目软件库中选取通过集成测试的软件包构建ISO包。可选的,所述代码入库模块还包括:判断单元,用于判断当前代码是否与所述代码库中的代码相同;当判定所述当前代码与所述代码库中的代码不相同时,将所述代码发送至所述代码库。本专利技术实施例提供了一种基于持续集成的软件包交付方法,实时将开发人员提交的审查成功的代码发送至代码库,当检测当满足预设条件时,将代码库中不同的代码进行组合构建软件包,对该软件包进行集成测试,并将构建的软件包发送至软件库;然后将软件库中的通过集成测试的若干个软件包构建为ISO包,通过PXE将该ISO包进行装机,对其进行系统测试,最后将通过系统测试的ISO包进行交付。在本申请技术方案中,从单元测试到集成测试再到装机进行系统测试,实现了全自动化的持续集成,不仅提高了代码的质量与业务逻辑的准确性,有效的缩短了研发周期,提高了软件包交付的效率,从而提高了软件开发的效率;而且有效的减少了人力、财力以及物力的投入,具有好的社会经济效率。此外,本专利技术实施例还针对基于持续集成的软件包交付方法提供了相应的实现装置,进一步使得所述方法更具有实用性,所述装置具有相应的优点。附图说明为了更清楚的说明本专利技术实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种基于持续集成的软件包交付方法的流程示意图;图2为本专利技术实施例提供的PXE装机流程示意图;图3为本专利技术实施例提供的PXE架构结构示意图;图4为本专利技术实施例提供的另一种基于持续集成的软件包交付方法的流程示意图;图5为本专利技术实施例提供的持续集成硬件结构示意图;图6为本专利技术实施例提供的基于持续集成的软件包交付装置的一种实施方式结构图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。现有的软件开发模式,只有在各模块研发完成后,将其进行集合后,才进行相关测试。这样势必会导致最初的一些简单的bug到最本文档来自技高网
...
一种基于持续集成的软件包交付方法及装置

【技术保护点】
一种基于持续集成的软件包交付方法,其特征在于,包括:从代码审查平台获取审查成功的代码,并将其发送至代码库;当满足预设条件时,在所述代码库中选取不同的代码构建预设格式的软件包,将所述软件包发送至项目软件库,并在用户搭建的测试环境中,对所述软件包进行集成测试;在所述项目软件库中选取通过集成测试的软件包构建ISO包,通过PXE服务器将所述ISO包安装在物理机上,向所述物理机发送运行测试脚本的指令,以对所述ISO包进行系统测试;将通过系统测试的ISO包交付所述用户。

【技术特征摘要】
1.一种基于持续集成的软件包交付方法,其特征在于,包括:从代码审查平台获取审查成功的代码,并将其发送至代码库;当满足预设条件时,在所述代码库中选取不同的代码构建预设格式的软件包,将所述软件包发送至项目软件库,并在用户搭建的测试环境中,对所述软件包进行集成测试;在所述项目软件库中选取通过集成测试的软件包构建ISO包,通过PXE服务器将所述ISO包安装在物理机上,向所述物理机发送运行测试脚本的指令,以对所述ISO包进行系统测试;将通过系统测试的ISO包交付所述用户。2.根据权利要求1所述的方法,其特征在于,所述在所述项目软件库中选取通过集成测试的软件包构建ISO包包括:检测持续集成系统的负载数目;当检测到所述持续集成系统的负载数目不大于预设阈值时,在所述项目软件库中选取通过集成测试的软件包构建ISO包。3.根据权利要求1所述的方法,其特征在于,所述在所述项目软件库中选取通过集成测试的软件包构建ISO包包括:在预设时间从所述项目软件库中选取通过集成测试的软件包,构建ISO包。4.根据权利要求3所述的方法,其特征在于,所述预设条件为:检测到代码进入所述代码库或当前时间为预设时间。5.根据权利要求1至4任意一项所述的方法,其特征在于,所述通过PXE服务器将所述ISO包安装在物理机上包括:获取所述用户为所述PXE服务器配置的文件信息;根据所述文件信息对DHCP、TFTP以及Kickstart进行配置,并将各自的配置文件发送至相应的服务器中;所述PXE服务器将所述ISO包,经过所述TFTP服务器下载至所述物理机中;利用所述Kickstart服务器将所述ISO包安装至所述物理机。6.根据权利要求5所述的方法,其特征在于,所述将...

【专利技术属性】
技术研发人员:刘康赵祯龙刘洋
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1