软件部署方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:26923716 阅读:10 留言:0更新日期:2021-01-01 22:47
本申请涉及一种软件部署方法、装置、计算机设备和存储介质。所述方法包括:响应于软件部署指令,获取对应的配置信息,配置信息包括待编译代码参数和环境参数;根据待编译代码参数获得对应的待编译代码,对待编译代码进行编译,生成软件包;根据环境参数确定对应的运行环境,将软件包部署到运行环境中。该方法可以应用于云环境下的部署服务,采用本方法能够提高部署效率。

【技术实现步骤摘要】
软件部署方法、装置、计算机设备和存储介质
本申请涉及计算机
,特别是涉及一种软件部署方法、装置、计算机设备和存储介质。
技术介绍
软件从开发到发布的流程通常会包含持续集成、持续交付和持续部署阶段,持续集成是指频繁地将开发人员提交的新代码集成到原有代码,以便尽早地发现集成错误。持续交付是指让软件在短周期内产出,确保软件随时可以被可靠地发布。持续部署是将代码自动部署到各个运行环境,使其能够尽快地被用户所使用。公有云通常指第三方提供商为用户提供的能够使用的云,公有云环境下的部署需要支持多租户,多项目等概念,提供对公网开放的一个服务能力。私有云是将云基础设施与软硬件资源创建在防火墙内,以供机构或企业内各部门共享数据中心内的资源,私有云环境表示对内部使用的一个环境。传统技术的部署脚本编写比较复杂,灵活性较差,导致部署效率较低,不能友好地支持公有云环境和私有云环境下的持续集成与部署。
技术实现思路
基于此,有必要针对上述技术问题,提供一种能够提高部署效率的软件部署方法、装置、计算机设备和存储介质。一种软件部署方法,所述方法包括:响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。一种软件部署装置,所述装置包括:获取模块,用于响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;集成模块,用于根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;部署模块,用于根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。上述软件部署方法、装置、计算机设备和存储介质,响应于软件部署指令,获取对应的配置信息,配置信息包括待编译代码参数和环境参数;根据待编译代码参数获得对应的待编译代码,对待编译代码进行编译,生成软件包;根据环境参数确定对应的运行环境,将软件包部署到运行环境中。据此,将持续部署能力集成到持续集成流程中,当需要部署到多个不同环境时,可以通过修改具体的环境参数,实现不同环境的灵活配置,并实现一键式持续交付,而无需重新编写整体的流程逻辑代码,通过这种相对松耦合的流程设计能够实现多环境快速部署,提高部署效率,并能够友好地支持公有云环境和私有云环境下的持续集成与部署。附图说明图1为一个实施例中软件部署方法的应用环境图;图2为一个实施例中软件部署方法的流程示意图;图3为一个实施例中配置页面的示意图;图4为一个实施例中软件部署方法的流程示意图;图5为一个实施例中软件部署方法的流程示意图;图6为一个实施例中软件部署方法的流程可视化示意图;图7为一个实施例中软件部署装置的结构框图;图8为一个实施例中计算机设备的内部结构图;图9为一个实施例中计算机设备的内部结构图。具体实施方式为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。本申请提供的软件部署方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。用户可以通过终端102访问软件开发管理平台,服务器104可以是该平台所在的服务器。软件部署方法可以应用于安装有软件开发管理平台的终端,也可以应用于该平台所在的服务器,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。在一个实施例中,如图2所示,提供了一种软件部署方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤S202至步骤S206。S202,响应于软件部署指令,获取对应的配置信息,配置信息包括待编译代码参数和环境参数。软件部署指令表示触发软件部署流程的指令,软件部署流程包括拉取代码、编译、打包、部署的全流程,技术人员可以通过软件开发管理平台页面一键式发起软件部署指令,终端在接收到软件部署指令后,自动执行软件部署流程,无需人为再参与,据此可降低技术人员门槛。具体地,以Coding平台为例,Coding平台集成了持续集成工具(如Jenkins)和持续部署工具(如Ansible),技术人员通过终端访问Coding平台,在相应的页面预先设置部署流程对应的配置信息,配置信息包括待编译代码参数和环境参数,其中,待编译代码参数用于指示后续要编译哪些代码,环境参数用于指示后续要将软件部署到哪些环境。技术人员设置好配置信息后,可以通过点击相应的控件以发起软件部署指令,终端接收到软件部署指令后,可以获取与该软件部署指令对应的配置信息。S204,根据待编译代码参数获得对应的待编译代码,对待编译代码进行编译,生成软件包。从配置信息中获得待编译代码参数后,可以根据待编译代码参数从相应的代码仓库中获得与待编译代码参数对应的代码,作为待编译代码。编译是把高级语言的源代码处理成二进制语言的可执行代码的过程,例如,java环境使用mvn命令即可执行编译。将编译好的代码打包成软件包,放到相应的环境下即可实现部署服务。S206,根据环境参数确定对应的运行环境,将软件包部署到运行环境中。运行环境可以包括开发环境、测试环境、演示环境和生产环境中的一种或多种。通过修改环境参数,可以配置不同的运行环境,将软件包部署到不同的运行环境中,以实现多环境的快速部署。上述软件部署方法中,响应本文档来自技高网...

【技术保护点】
1.一种软件部署方法,其特征在于,所述方法包括:/n响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;/n根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;/n根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。/n

【技术特征摘要】
1.一种软件部署方法,其特征在于,所述方法包括:
响应于软件部署指令,获取对应的配置信息,所述配置信息包括待编译代码参数和环境参数;
根据所述待编译代码参数获得对应的待编译代码,对所述待编译代码进行编译,生成软件包;
根据所述环境参数确定对应的运行环境,将所述软件包部署到所述运行环境中。


2.根据权利要求1所述的方法,其特征在于,所述待编译代码参数包括:软件代码参数和代码分支参数;根据所述待编译代码参数获得对应的待编译代码,包括:
根据所述软件代码参数,从代码仓库中获得对应的软件代码;
根据所述代码分支参数,从所述软件代码中获得对应的代码分支,作为待编译代码。


3.根据权利要求2所述的方法,其特征在于,所述环境参数包括服务器参数和运行参数;根据所述环境参数确定对应的运行环境,包括:
根据所述服务器参数和所述运行参数确定对应的运行环境。


4.根据权利要求3所述的方法,其特征在于,所述配置信息还包括部署机器参数和服务名称参数;将所述软件包部署到所述运行环境中,包括:
根据所述部署机器参数确定对应的部署机器;
根据所述服务名称参数确定对应的待部署服务;
从所述软件包中获取与所述待部署服务对应的代码,调用所述部署机器将与所述待部署服务对应的代码部署到所述运行环境中。


5.根据权利要求1至4中任意一项所述的方法,其特征在于,所述配置信息还包括工具代码参数,所述工具代码参数对应的工具代码包括集成工具代码和部署工具代码;
根据所述待编译代码参数获得...

【专利技术属性】
技术研发人员:王成林
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1