一种软件产品部署方法及装置与流程

文档序号:37449210发布日期:2024-03-28 18:32阅读:29来源:国知局
一种软件产品部署方法及装置与流程

本技术涉及计算机,特别是涉及一种软件产品部署方法及装置。


背景技术:

1、目前,sd-wan(software-defined networking in a wide area network,软件定义广域网络)等软件产品,通常基于微服务架构进行部署,以部署出满足用户个性化需求的软件产品。

2、然而,基于微服务架构部署软件产品,不仅需要为每个服务预先制作出相应的容器,且在使用这些容器部署满足用户个性化需求的软件产品时,还需要引入容器编排工具对满足用户定制化需求的容器进行复杂的编排和进程管理,从而导致软件产品的定制化部署难度较大。因此,如何降低软件产品的定制化部署难度成为目前亟需解决的问题。


技术实现思路

1、有鉴于此,本技术提出了一种软件产品部署方法及装置,主要目的在于降低软件产品的定制化部署的难度。

2、为了达到上述目的,本技术主要提供了如下技术方案:

3、第一方面,本技术提供了一种软件产品部署方法,该软件产品部署包括:

4、基于待部署软件产品的定制化需求,生成相应的产品配置文件,所述产品配置文件用于指示软件产品需要包含的第一服务;

5、基于所述产品配置文件,从预设代码库中选取与所述第一服务相应的第一目标代码,所述预设代码库中预先存储有各个服务对应的代码;

6、基于所述第一目标代码,部署得到所述软件产品。

7、在本技术一些实施例中,所述预设代码库中还预先存储有用于实现各服务调用文件的调用代码,则,该软件产品部署还包括:若所述产品配置文件指示所述第一服务中存在需要文件调用的第二服务,且指示所述第二服务需要调用相应的目标文件,则基于所述产品配置文件,将所述预设代码库中用于实现所述第二服务的服务代码以及用于实现所述第二服务调用相应的目标文件的调用代码,确定为所述第二服务相应的第二目标代码;若所述产品配置文件指示所述第一服务中存在不需要文件调用的第三服务,则基于所述产品配置文件,将所述预设代码库中用于实现所述第三服务的服务代码,确定为所述第三服务相应的第三目标代码。

8、在本技术一些实施例中,基于所述产品配置文件,从预设代码库中选取与所述第一服务相应的第一目标代码,包括:若所述产品配置文件指示所述第一服务中存在第二服务且存在第三服务,则将相应的第二目标代码和第三目标代码,选取为所述第一服务相应的第一目标代码;若所述产品配置文件指示所述第一服务中仅存在第二服务,则将相应的第二目标代码,选取为所述第一服务相应的第一目标代码;若所述产品配置文件指示所述第一服务中仅存在第三服务,则将相应的第三目标代码,选取为所述第一服务相应的第一目标代码。

9、在本技术一些实施例中,在从所述预设代码库确定与所述第二服务相应的第二目标代码之前,该软件产品部署还包括:判断所述第二服务相应的目标文件中是否包括所述第二服务需要调用的第一必要文件,所述第一必要文件为实现所述第二服务不可缺少的任意文件;若不包括,则将所述第一必要文件添加至所述第二服务相应的目标文件。

10、在本技术一些实施例中,在从所述预设代码库确定与所述第三服务相应的第三目标代码之前,该软件产品部署还包括:判断所述第三服务中是否存在需要调用相应的第二必要文件的第四服务,所述第二必要文件为实现所述第四服务不可缺少的任意文件;若存在,则将第二必要文件确定为所述第四服务相应的目标文件,并将所述第四服务添加至第二服务,得到更新后的第二服务,并基于更新后的第二服务对所述产品文件配置文件进行更新。

11、在本技术一些实施例中,基于所述第一目标代码,部署得到所述软件产品,包括:对所述第一目标代码进行编译;若编译通过,且所述第一服务中存在第二服务,则对所述第二服务相应的目标文件的存储地址和所述编译通过后的代码进行打包,得到相应的部署文件,所述存储地址用于供部署后的软件产品调用相应的目标文件;若编译通过,且所述第一服务中不存在第二服务,则对所述编译通过后的代码进行打包,得到相应的部署文件;基于所述部署文件,部署得到所述软件产品。

12、在本技术一些实施例中,在基于所述产品配置文件,从预设代码库中选取与所述第一服务相应的第一目标代码之前,该软件产品部署还包括:检测所述第一服务中是否缺少所述软件产品需要必备的基本服务;若缺少,则将缺少的基本服务添加至第一服务,得到更新后的第一服务,并基于更新后的第一服务对所述产品配置文件进行更新。

13、在本技术一些实施例中,该软件产品部署还包括:确定所述软件产品的部署环境;在与所述部署环境匹配的测试环境中,基于所述第一目标代码,部署所述软件产品;若部署出现异常,则获取相应的部署日志,以供异常排查使用;若部署未出现异常,则执行基于所述第一目标代码,部署得到所述软件产品的步骤。

14、在本技术一些实施例中,该软件产品部署还包括:若存在第一服务未从所述预设代码库中查找到相应的第一目标代码,则针对未查到相应第一目标代码的第一服务,发出无目标代码可用的提示。

15、在本技术一些实施例中,该软件产品部署还包括:确定使用所述软件产品的用户的用户属性信息以及所述软件产品的业务类型;将预设定制化需求中,与所述用户属性信息和所述业务类型匹配的定制化需求,获取为所述软件产品的定制化需求。

16、在本技术一些实施例中,该软件产品部署还包括:展示与所述软件产品的业务类型相应的可定制服务;若检测到存在被选定的可定制服务,则将被选定的可定制化服务获取为所述软件产品的定制化需求。

17、在本技术一些实施例中,基于待部署软件产品的定制化需求,生成相应的产品配置文件,包括:若所述定制化需求指示定制化集成分析功能和控制功能的sd-wan产品,则生成用于定制集成分析功能和控制功能的sd-wan产品的产品配置文件;若所述定制化需求指示定制具有控制功能的sd-wan产品,则生成用于定制只具有控制功能的sd-wan产品的产品配置文件;若所述定制化需求指示定制具有分析功能的sd-wan产品,则生成用于定制只具有分析功能的sd-wan产品的产品配置文件。

18、第二方面,本技术提供了一种软件产品部署装置,该软件产品部署装置包括:

19、生成模块,用于基于待部署软件产品的定制化需求,生成相应的产品配置文件,所述产品配置文件用于指示软件产品需要包含的第一服务;

20、选取模块,用于基于所述产品配置文件,从预设代码库中选取与所述第一服务相应的第一目标代码,所述预设代码库中预先存储有各个服务对应的代码;

21、部署模块,用于基于所述第一目标代码,部署得到所述软件产品。

22、第三方面,本技术提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面所述的软件产品部署方法。

23、第四方面,本技术提供了一种电子设备,所述电子设备包括:存储器,用于存储程序;处理器,耦合至所述存储器,用于运行所述程序以执行上述的软件产品部署方法。

24、本技术提供的软件产品部署方法及装置,当存在待部署软件产品时,基于待部署软件产品的定制化需求,生成相应的用于指示软件产品需要包含的第一服务的产品配置文件。然后基于产品配置文件从预设代码库中选取与第一服务相应的第一目标代码,最后基于所选取的第一目标服务,部署得到软件产品。可见,本技术提供的方案在确定待部署软件产品的定制化需求的情况下,可基于待部署软件产品的定制化需求,生成用于定制化部署软件产品所需的产品配置文件,以通过产品配置文件指示出软件产品需要包含的服务,然后依据产品配置文件,直接从预设代码库中提取出与产品配置文件中指示的服务相应的代码,并基于提取到的代码部署得到软件产品。这样,软件产品定制化的部署,无需引入容器等较为复杂的主体,通过预设代码库中预先存储的成熟代码即可实现软件产品的部署,因此能够降低软件产品定制化部署的难度。

25、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1