软件集成和部署方法以及软件开发管理系统技术方案

技术编号:37158316 阅读:15 留言:0更新日期:2023-04-06 22:21
本申请涉及计算机技术,公开了一种软件集成和部署方法以及软件开发管理系统。其方法包括:从代码仓库获取目标软件开发任务的分支代码;调用编译部署工具,将分支代码部署到测试环境中以进行测试,接收测试通过结果;将分支代码与目标软件的原有主代码合并,得到目标软件的待验证版本;调用编译部署工具,将待验证版本部署到验证环境中以进行验证,接收验证通过结果,并生成目标软件的应用包;调用编译部署工具,将应用包部署到至少一个产品服务器。本申请通过构建一种软件开发管理系统,此系统使得开发人员和测试人员之间的沟通更方便,做到持续集成和部署;此系统还可以实现对软件开发流程的自动化,提升开发测试人员的工作效率。率。率。

【技术实现步骤摘要】
软件集成和部署方法以及软件开发管理系统


[0001]本公开涉及计算机
,具体而言,涉及一种软件集成和部署方法以及软件开发管理系统。

技术介绍

[0002]目前,软件开发过程分为集成、交付、部署三个阶段;传统软件开发流程是在所有功能开发后,串行执行这三个阶段。
[0003]然而,在执行集成阶段时,存在发现软件漏洞的时间较晚的问题,导致修复漏洞的成本增大。在执行交付和/或部署阶段时,没有一致的可部署的软件,只有在完成集成测试、系统测试后,才能得到可用的软件,集成部署活动在某个开发人员的机器上构建,可能存在在其它机器上无法运行的问题。同时,对代码进行人工集成、交付与部署,需要花费大量时间,降低了开发测试人员的工作效率,增加了人力成本,而且,人工操作还可能产生的错误。
[0004]因此,业界亟需一种软件集成和部署方法,以解决上述问题。

技术实现思路

[0005]针对上述情况,本申请实施例提供了一种软件集成和部署方法以及软件开发管理系统,旨在解决软件集成和部署过程中存在的发现软件漏洞的时间较晚、没有一致的可部署的软件、以及开发测试人员的工作效率较低的问题。
[0006]第一方面,本申请实施例提供了一种软件集成和部署方法,所述方法通过软件开发管理系统实现,所述系统包括:管理服务器、代码仓库、编译部署工具、以及至少一个产品服务器,其中,所述管理服务器分别通信连接所述代码仓库、所述编译部署工具和各所述产品服务器;
[0007]所述方法应用于所述管理服务器,所述方法包括以下处理:<br/>[0008]从所述代码仓库获取目标软件开发任务的分支代码;
[0009]调用所述编译部署工具,将所述分支代码部署到测试环境中以进行测试,并接收测试通过结果;
[0010]将所述分支代码与所述目标软件的原有主代码合并,得到所述目标软件的待验证版本;
[0011]调用所述编译部署工具,将待验证版本部署到验证环境中以进行验证,接收验证通过结果,并生成所述目标软件的应用包;
[0012]调用所述编译部署工具,将所述应用包部署到至少一个所述产品服务器。
[0013]第二方面,本申请实施例还提供了一种软件集成和部署装置,所述装置可部署于软件开发管理系统的管理服务器,所述装置用于实现上述的软件集成和部署方法。
[0014]第三方面,本申请实施例还提供了一种软件开发管理系统,所述系统包括管理服务器、代码仓库、编译部署工具、以及至少一个产品服务器,其中,所述管理服务器部署有上述软件集成和部署装置,所述管理服务器分别通信连接所述代码仓库、所述编译部署工具
和各所述产品服务器;
[0015]所述代码仓库,用于接收和存储开发终端推送的目标软件开发任务的分支代码,并响应于所述管理服务器的获取指令,将所述分支代码发送至所述管理服务器;
[0016]所述编译部署工具,用于响应于所述管理服务器的调用指令,将所述分支代码部署到测试环境中以进行测试,并接收测试通过结果;将待验证版本部署到验证环境中以进行验证,接收验证通过结果,并生成所述目标软件的应用包;以及将所述应用包部署到至少一个所述产品服务器;
[0017]所述产品服务器,用于接收和存储所述应用包。
[0018]第四方面,本申请实施例还提供了一种电子设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,可执行指令在被执行时使处理器执行上述软件集成和部署方法的步骤。
[0019]第五方面,本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储一个或多个程序,一个或多个程序当被包括多个应用程序的电子设备执行时,使得电子设备执行上述软件集成和部署方法的步骤。
[0020]本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
[0021]本申请通过软件开发管理系统实现,通过调用该系统中的编译部署工具,将从代码仓库获取到的目标软件开发任务的分支代码部署到测试环境中以进行测试,测试通过,则将分支代码和该目标软件的原有主代码合并,得到目标软件的待验证版本;调用编译部署工具,将待验证版本部署到验证环境中以进行验证,接收验证通过结果,并生成目标软件的应用包,将应用包部署到至少一个产品服务器上,从而实现了软件的集成与部署。一方面,利用软件开发管理系统,可以使得开发过程和测试过程同时进行,开发人员和测试人员之间的沟通更加方便快捷,进而提升了开发人员修复bug的效率,真正做到持续集成;可以实现代码的自动化构建和部署,并对相关版本的更新做到实时同步与通知提醒,做到持续部署;另一方面,软件开发管理系统保障了开发测试人员在任意时间、任何地点都可生成可部署的软件,避免了软件在其它机器上无法运行的问题;再者,利用软件开发管理系统,可以实现对整个软件开发流程的自动化和标准化,从而提升了开发测试人员的工作效率,并且减少了人工出错情况的发生。
附图说明
[0022]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0023]图1示出了本申请提供的一个实施例的软件开发管理系统的结构示意图;
[0024]图2示出了本申请提供的一个实施例的软件集成和部署方法的流程示意图;
[0025]图3示出了本申请提供的又一个实施例的软件开发管理系统的结构示意图;
[0026]图4示出了本申请提供的又一个实施例的软件集成和部署方法的流程示意图;
[0027]图5示出了本申请提供的一个实施例的软件集成和部署装置的结构示意图;
[0028]图6示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
[0029]为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0030]以下结合附图,详细说明本申请各实施例提供的技术方案。
[0031]现有技术,比如GitLab

CI、Jenkins工具无法对开发人员和测试人员之间的交互做到准确的把控,同时,无法将软件开发流程自动化。
[0032]基于此,本申请提出了一种软件集成和部署方法,基于软件开发管理系统实现,一方面,此系统使得开发人员和测试人员之间的沟通和交互更加方便,提升了开发人员修复bug的效率,真正做到持续集成;可以实现代码的自动化构建和部署,并对相关版本的更新做到实时同步与通知提醒,做到持续部署;另一方面,此系统可以实现对整个软件开发流程的自动化,从而提升了开发测试人员的工作效率。
[0033]图1示出了本申请提供的一个实施例的软件开发管理系统的结构示意图,本申请实施例提供的软件集成和部署方法,可通过在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件集成和部署方法,其特征在于,所述方法通过软件开发管理系统实现,所述系统包括:管理服务器、代码仓库、编译部署工具、以及至少一个产品服务器,其中,所述管理服务器分别通信连接所述代码仓库、所述编译部署工具和各所述产品服务器;所述方法应用于所述管理服务器,所述方法包括以下处理:从所述代码仓库获取目标软件开发任务的分支代码;调用所述编译部署工具,将所述分支代码部署到测试环境中以进行测试,并接收测试通过结果;将所述分支代码与所述目标软件的原有主代码合并,得到所述目标软件的待验证版本;调用所述编译部署工具,将所述待验证版本部署到验证环境中以进行验证,接收验证通过结果,并生成所述目标软件的应用包;调用所述编译部署工具,将所述应用包部署到至少一个所述产品服务器。2.根据权利要求1所述的方法,其特征在于,所述分支代码包括多个;所述方法还包括:将多个分支代码按照在所述代码仓库中的发布时间进行排序,将发布时间在前的作为在前分支代码,将发布时间在后的作为在后分支代码;将所述在后分支代码作为目标软件开发任务的分支代码,将所述在前分支代码对应的部署成功的应用包、对应的代码作为所述目标软件的原有主代码,重复执行所述处理多次,以对所述目标软件进行集成和部署。3.根据权利要求1所述的方法,其特征在于,所述处理还包括:记录执行所述处理过程中产生的日志;根据所述日志生成所述目标软件的开发流程管理文件。4.根据权利要求1所述的方法,其特征在于,在所述从所述代码仓库获取目标软件开发任务的分支代码的步骤之前,所述处理还包括:响应于目标软件开发任务的新建命令,建立开发任务发布单,其中,所述开发任务发布单中包括以下至少一项:应用发布单名称、开发人员姓名、测试人员姓名、功能分支名、开发服务器的IP和端口信息、以及测试服务器的IP和端口信息;基于所述开发任务发布单,调用所述编译部署工具,对所述代码仓库的初始分支代码进行编译和部署,得到所述目标软件开发任务的分支代码。5.根据权利要求1所述的方法,其特征在于,所述处理还包括:若所述对所述分支代码进行测试的结果为不通过,则向对应的开发终端发...

【专利技术属性】
技术研发人员:姜良和
申请(专利权)人:大箴杭州科技有限公司
类型:发明
国别省市:

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

1