CN114115954B - 自动化集成部署服务的方法和装置、以及电子设备和存储介质 - Google Patents

自动化集成部署服务的方法和装置、以及电子设备和存储介质 Download PDF

Info

Publication number
CN114115954B
CN114115954B CN202210083016.8A CN202210083016A CN114115954B CN 114115954 B CN114115954 B CN 114115954B CN 202210083016 A CN202210083016 A CN 202210083016A CN 114115954 B CN114115954 B CN 114115954B
Authority
CN
China
Prior art keywords
service
service configuration
configuration information
information
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210083016.8A
Other languages
English (en)
Other versions
CN114115954A (zh
Inventor
王绍节
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jindi Technology Co Ltd
Original Assignee
Beijing Jindi Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Jindi Technology Co Ltd filed Critical Beijing Jindi Technology Co Ltd
Priority to CN202210083016.8A priority Critical patent/CN114115954B/zh
Publication of CN114115954A publication Critical patent/CN114115954A/zh
Application granted granted Critical
Publication of CN114115954B publication Critical patent/CN114115954B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种自动化集成部署服务的方法和装置、以及电子设备和存储介质,其中,该方法包括:获取服务配置信息;根据预设的配置信息校验规则,校验服务配置信息;响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件;执行服务配置文件,生成镜像和服务部署文件;根据服务部署文件,发布镜像中的服务。本发明提供的自动化集成部署服务的方法和装置、以及电子设备和存储介质,在用户输入服务配置信息后,即可实现服务的自动化持续集成与持续发布,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。

Description

自动化集成部署服务的方法和装置、以及电子设备和存储 介质
技术领域
本发明涉及计算机技术领域,具体地,涉及一种自动化集成部署服务的方法和装置、以及电子设备和存储介质。
背景技术
CICD是应用程序开发过程中持续集成、持续交付的组合实践。通过引入自动化的服务发布流程,实现频繁向客户交付功能的目的。CICD是实现敏捷开发的必要基础设施。
GitLab是一个用于仓库管理系统的开源项目,其是使用Git(称为分布式版本控制系统或者分布式版本控制软件)作为代码管理工具,并在此基础上搭建起来的Web服务。GitLab的CICD功能可以基于服务配置文件(如.gitlab-ci.yml)定义的流水线(pipeline)流程,调用GitLab的Runner(执行)功能进行服务的持续集成与持续发布。也就是说,GitLab集成了CICD的相关功能,具备成熟、完善且丰富的CICD流水线功能。
虽然GitLab具备成熟、完善且丰富的自动化CICD流水线功能,但是,为了生成服务配置文件(如.gitlab-ci.yml文件),需要用户熟练掌握服务配置信息的配置规则和较高的读写程序的能力,才能直接读写服务配置文件,这就使得GitLab等实现服务集成部署工具具有较高的学习和使用门槛、不够直观、难于理解。因此,现有技术中缺少一种能够自动化集成部署服务的方法和装置、以及电子设备和存储介质。
发明内容
本发明的目的是提供一种自动化集成部署服务的方法和装置、以及电子设备和存储介质,以解决相关技术中存在的上述问题。
根据本发明的第一方面,提供了一种自动化集成部署服务的方法,该方法包括:获取服务配置信息;根据预设的配置信息校验规则,校验服务配置信息;响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件;执行服务配置文件,生成镜像和服务部署文件;根据服务部署文件,发布镜像中的服务。
根据本发明的第二方面,提供了一种自动生成服务配置文件的方法,该方法包括:获取服务配置信息,其中,服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;根据预设的配置信息校验规则,校验服务配置信息;响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件。
根据本发明的第三方面,提供了一种自动化集成部署服务的装置,该装置包括:服务配置平台、校验模块、封装模块、执行模块和部署模块;服务配置平台,用于获取服务配置信息;校验模块,用于根据预设的配置信息校验规则,校验服务配置信息;封装模块,用于响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件;执行模块,用于执行服务配置文件,生成镜像和服务部署文件;部署模块,用于根据服务部署文件,将镜像中的服务通过服务管理器进行发布。
根据本发明的第四方面,提供了一种自动生成服务配置文件的装置该装置包括:服务配置平台、校验模块和封装模块;服务配置平台,用于获取服务配置信息,其中,服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;校验模块,用于根据预设的配置信息校验规则,校验服务配置信息;封装模块,用于响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件
根据本发明的第五方面,提供了一种电子设备,该电子设备包括:存储器,其上存储有计算机程序;处理器,用于执行存储器中的所述计算机程序,以实现上述任一项所述方法的步骤。
根据本发明的第六方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
本发明提供的自动化集成部署服务的方法和装置、以及电子设备和存储介质,在用户输入服务配置信息后,即可实现服务的自动化持续集成与持续发布,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1为本发明提供的自动化集成部署服务的方法的实施例一的一流程图;
图2为本发明提供的自动化集成部署服务的方法的实施例一的另一流程图;
图3为本发明提供的自动化集成部署服务的方法的实施例一的另一流程图;
图4为本发明提供的自动化集成部署服务的方法的实施例一的另一流程图;
图5为本发明提供的自动化集成部署服务的方法的实施例二的一流程图;
图6为本发明提供的自动生成服务配置文件的方法的一流程图;
图7为本发明提供的自动化集成部署服务的装置的实施例三的一结构框图;
图8为本发明提供的自动化集成部署服务的装置的实施例三的另一结构框图;
图9为本发明提供的自动化集成部署服务的装置的实施例三的另一结构框图;
图10为本发明提供的自动化集成部署服务的装置的实施例三的另一结构框图;
图11为本发明提供的自动生成服务配置文件的装置的实施例四的一结构框图;
图12为本发明实施例提供的电子设备的结构示意图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
需要说明的是,在本发明中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序;术语“S101”、“S102”、“S201”、“S202”等用于区别步骤,而不必理解为按照特定的顺序或先后次序执行方法步骤;下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。
示例性方法
本发明提供了一种自动化集成部署服务的方法,该方法是在GitLab、Jenkins等实现服务集成部署工具的基础上进行的自动化服务集成与发布,并且该方法可适用于多种语言环境,如JavaScript语言环境、C语言环境、C++语言环境等,本领域技术人员可以根据实际需要选择不同的语言环境,此处不做限定。
为了便于本领域技术人员更为清楚地理解本发明的技术方案,下面以实施例一和实施例二对本发明提供的自动化集成部署服务的方法进行详细介绍,当然,本领域技术人员也可以根据实际需要灵活变换,但本发明并不限于此。
图1为本发明提供的自动化集成部署服务的方法的实施例一的一流程图。如图1所示,该方法包括:
步骤S101:获取服务配置信息;
在本实施例中,可先由用户通过服务配置平台的可视化界面(如可视化web用户界面)输入服务配置信息,然后通过服务配置平台获取用户输入的服务配置信息。
其中,服务配置信息包括:服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息。此外,本领域技术人员在上述服务配置信息的基础上,还可以根据实际需要,灵活增设其他服务配置信息,此处不做限定。
进一步地,服务基础配置信息可包括:服务名称和服务代码分支;编译打包配置信息可包括:编译打包命令;镜像构建配置信息可包括:镜像仓库地址目录和登录命令;服务部署配置信息可包括:服务端口、实例数量和启动命令。本领域技术人员可以根据实际需要进行选择,此处不做限定。
步骤S102:根据预设的配置信息校验规则,校验服务配置信息;
可选地,如图2所示,步骤S102具体包括:
步骤S1021:获取预设的配置信息校验规则,其中,配置信息校验规则包括配置信息内容校验规则和配置信息格式校验规则;
对于配置信息校验规则,本领域技术人员可以根据实际需要灵活设定,此处不做限定。也即,配置信息内容校验规则和配置信息格式校验规则本领域技术人员可以根据实际需要灵活设定,此处不做限定。
步骤S1022:根据配置信息内容校验规则和配置信息格式校验规则,校验服务配置信息的内容对应的种类和格式。
具体地,如图2所示,步骤S1022可进一步包括:
步骤S10221:根据配置信息内容校验规则,校验服务配置信息的内容对应的种类;
具体地,校验服务配置信息的内容对应的种类是否与配置信息内容校验规则中设定的内容种类相同;若相同,则判定服务配置信息的内容通过内容校验;若不相同,则响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息,也即用户通过服务配置平台重新输入未通过校验的服务配置信息。
在一个具体实例中,若通过服务配置平台获取到的服务配置信息包括服务名称、服务代码分支、编译打包命令、镜像仓库地址目录、登录命令、服务端口、实例数量和启动命令,配置信息内容校验规则中设定的内容种类包括服务名称、服务代码分支、编译打包命令、镜像仓库地址目录、登录命令、服务端口、实例数量和启动命令时,由于服务配置信息的内容对应的种类与配置信息内容校验规则中设定的内容种类相同,因此判定服务配置信息的内容通过内容校验;若通过服务配置平台获取到的服务配置信息包括服务名称、服务代码分支、编译打包命令、镜像仓库地址目录、登录命令、实例数量和启动命令,配置信息内容校验规则中设定的内容种类包括服务名称、服务代码分支、编译打包命令、镜像仓库地址目录、登录命令、服务端口、实例数量和启动命令时,由于通过服务配置平台获取到的服务配置信息中没有包括服务端口,导致其内容对应的种类与配置信息内容校验规则中设定的内容种类不相同,则响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息。
步骤S10222:根据配置信息格式校验规则,校验服务配置信息的内容对应的格式。
具体地,校验服务配置信息的内容对应的格式是否与配置信息格式校验规则中设定的格式相同;若相同,则判定服务配置信息的格式通过格式校验;若不相同,则响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息。
在另一个具体实例中,若通过服务配置平台获取到的服务配置信息中的服务名称的格式为英文名称,配置信息格式校验规则中设定的服务名称的格式为英文名称时,由于服务配置信息中的服务名称的格式与配置信息格式校验规则中设定的服务名称的格式相同,因此判定服务配置信息的格式通过格式校验;若通过服务配置平台获取到的服务配置信息中的服务名称的格式为中文名称,配置信息格式校验规则中设定的服务名称的格式为英文名称时,由于服务配置信息中的服务名称的格式与配置信息格式校验规则中设定的服务名称的格式不相同,因此响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息。
需要说明的是,只有在步骤S10221和步骤S10222的校验结果都为通过校验的结果时,才会继续执行步骤S103。若步骤S10221和步骤S10222中的任一个的校验结果为不通过校验的结果时,都不会继续执行步骤S103,而是执行步骤S106,由用户通过服务配置平台输入服务配置信息。
因此,由上述可知,本实施例的方法还可包括:响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息。
步骤S103:响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件;
可选地,如图3所示,步骤S103具体包括:
步骤S1031:响应于服务配置信息通过校验的结果,根据服务配置信息和预设的服务配置格式文件,生成与服务配置格式文件中设定的信息格式对应的待封装对象,其中,待封装对象包括任务信息、阶段信息和变量信息;
在通过校验后,首先从服务配置信息中获取生成待封装对象所需要的待封装数据,如任务数据、阶段数据和变量数据,然后根据预设的服务配置格式文件中设定的信息格式,对待封装数据进行格式转换,生成包括有任务信息、阶段信息和变量信息的待封装对象。
需要说明的是,预设的服务配置格式文件中设定的信息格式为符合封装服务配置文件要求的信息格式,本领域技术人员可以根据实际需要灵活设定,此处不做限定。
任务信息用于定义GitLab的CICD流水线执行的任务,其中,每个任务负责执行一系列的操作命令。其是根据服务配置信息,生成对应的任务,该任务包括编译打包任务、镜像构建任务和服务部署任务,并将该任务作为任务信息。由于上述任务根据服务配置格式文件中设定的信息格式进行了格式转换(即标准化),因此,不同类型的任务,会固定执行一系列操作命令,以完成各任务对应的工作。
阶段信息用于定义每个任务的执行顺序。其是在根据服务配置信息生成对应的任务时,提取每个任务所属的阶段,以确定每个任务的执行顺序。
变量信息用于定义每个任务执行过程中需要用到的变量。其是将服务配置信息中与每个任务相关的配置信息,保存到特定的变量中,这些变量全部嵌入了标准化的任务操作命令中,当实际执行任务时,能够自动通过变量获取到实际的内容。
应当说明的是,任务信息、阶段信息和变量信息都可以采用列表的形式进行存储,即任务信息可以以列表的形式进行存储得到任务信息列表,阶段信息可以以列表的形式进行存储得到阶段信息列表,变量信息可以以列表的形式进行存储得到变量信息列表。也就是说,任务信息在以列表的形式进行存储时,任务信息即是任务信息列表;阶段信息在以列表的形式进行存储时,阶段信息即是阶段信息列表;变量信息在以列表的形式进行存储时,变量信息即是变量信息列表。
步骤S1032:根据服务配置格式文件中设定的封装格式,将待封装对象封装成服务配置文件。
以在JavaScript语言环境使用GitLab的CICD功能为例,服务配置格式文件中设定的信息格式和封装格式都是根据.gitlab-ci.yml文件(即服务配置文件)要求的格式设定的。在通过校验后,首先从服务配置信息中获取生成GitLabCI对象(待封装对象)所需要的待封装数据,如任务数据、阶段数据和变量数据,然后根据服务配置格式文件中设定的信息格式,对待封装数据进行格式转换(如映射的方式),生成包括有任务信息、阶段信息和变量信息的GitLabCI对象;在生成GitLabCI对象后,根据服务配置格式文件中设定的封装格式,可通过yaml转化工具包,将GitLabCI对象封装成.gitlab-ci.yml文件。
此外,在步骤S103之后,该方法还包括:
根据变量信息中的服务名称和服务分支代码,将服务配置文件发送至分布式版本控制系统的仓库中的对应存储区间;
监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则执行步骤S104;若否,则终止。
以在JavaScript语言环境使用GitLab的CICD功能为例,在获得.gitlab-ci.yml文件后,根据.gitlab-ci.yml文件中包括的变量信息中的服务名称和服务代码分支,将.gitlab-ci.yml文件发送至GitLab Project(GitLab中的项目)的分布式版本控制系统的仓库中的对应存储区间;监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则调用GitLab的Runner功能执行步骤S104;若否,则终止。
步骤S104:执行服务配置文件,生成镜像和服务部署文件;
可选地,如图4所示,步骤S104具体包括:
步骤S1041:执行服务配置文件,获取镜像构建参数和服务部署参数;
步骤S1042:调用镜像部署应用程序接口,根据镜像构建参数和服务部署参数,生成镜像和服务部署文件。
在本实施例中,镜像部署应用程序接口可进一步包括:镜像构建应用程序接口和服务部署应用程序接口;此时,步骤S1042具体包括:调用镜像构建应用程序接口,根据镜像构建参数,生成镜像;调用服务部署应用程序接口,根据服务部署参数,生成服务部署文件。
在本实施例中,由于服务配置文件是通过封装待封装对象得到的,因此,服务配置文件中也包括任务信息、阶段信息和变量信息,那么在执行服务配置文件时,会依照阶段信息定义的每个任务的执行顺序和变量信息定义的每个任务执行过程中需要用到的变量,依次执行任务信息中的任务,如依次执行编译打包任务、镜像构建任务和服务部署任务。
步骤S105:根据服务部署文件,发布镜像中的服务。
具体地,在执行服务配置文件时,会依照阶段信息确定任务信息中每个任务的执行顺序,如依次执行编译打包任务、镜像构建任务和服务部署任务,同时,还会根据变量信息获取到任务所需的变量,并将获取到的变量发送到任务信息中对应的任务;任务信息中的编译打包任务获取到对应的变量后,会执行编译打包任务中的命令,获取到镜像构建参数和服务部署参数;镜像构建任务在获取到执行编译打包任务生成的镜像构建参数后,会根据镜像构建参数,直接生成镜像,并将其发送至服务部署任务;而服务部署任务在获取到执行编译打包任务生成的服务部署参数后,也会根据服务部署参数,直接生成服务部署文件,并在接收到镜像后,根据服务部署文件,将镜像中的服务进行发布。
本实施例提供的自动化集成部署服务的方法,在用户输入服务配置信息后,即可实现服务的自动化持续集成与持续发布,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。此外,该方法在自动化集成部署服务的过程中,无需生成镜像构建模板和服务部署模板,方法简单,效率高。
图5为本发明提供的自动化集成部署服务的方法的实施例二的流程图。如图5所示,实施例二所述的自动化集成部署服务的方法与实施例一所述的自动化集成部署服务的方法的区别在于:
步骤S103之后,该方法还包括:
步骤S107:获取预设的服务配置列表,其中,服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息;
步骤S108:将存储服务配置文件的第三寻址信息添加至服务配置列表。
此时,步骤S104具体包括:
步骤S1041:根据服务配置列表中的第一寻址信息、第二寻址信息和第三寻址信息,获取对应的服务配置文件、镜像构建模板和服务部署模板;
步骤S1042:执行服务配置文件,获取镜像构建参数和服务部署参数;
步骤S1043:根据镜像构建参数和服务部署参数,修改镜像构建模板和服务部署模板,生成镜像和服务部署文件。
具体地,在执行服务配置文件时,会依照阶段信息确定任务信息中每个任务的执行顺序,如依次执行编译打包任务、镜像构建任务和服务部署任务,同时,还会根据变量信息获取到任务所需的变量,并将获取到的变量发送到任务信息中对应的任务;任务信息中的编译打包任务获取到对应的变量后,会执行编译打包任务中的命令,获取到镜像构建参数和服务部署参数;镜像构建任务在获取到执行编译打包任务生成的镜像构建参数后,会根据镜像构建参数,修改镜像构建模板(如Dockerfile模板),以生成镜像(如Dockerfile),并将其发送至服务部署任务;而服务部署任务在获取到执行编译打包任务生成的服务部署参数后,也会根据服务部署参数,修改服务部署模板(如deployment.yml模板),以生成服务部署文件(如deployment.yml文件),并在接收到镜像后,根据服务部署文件,将镜像中的服务进行发布。
除了上述不同之外,对于实施例二的其他描述均可参照对于实施例一描述,此处不再赘述。
本实施例提供的自动化集成部署服务的方法,在用户输入服务配置信息后,即可实现服务的自动化持续集成与持续发布,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。
图6为本发明提供的自动生成服务配置文件的方法的一流程图。如图6所示,本发明还提供了一种自动生成服务配置文件的方法,该方法包括:
步骤S101:获取服务配置信息,其中,服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;
步骤S102:根据预设的配置信息校验规则,校验服务配置信息;
步骤S103:响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件。
需要说明的是,图6所示的自动生成服务配置文件的方法与本发明实施例一和实施例二中的步骤S101至步骤S103相同,对于其的描述均可参照对于本发明实施例一和实施例二中的步骤S101至步骤S103的描述,此处不再赘述。
本实施例提供的自动生成服务配置文件的方法,在用户输入服务配置信息后,即可自动生成服务配置文件,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。
示例性装置
图7为本发明提供的自动化集成部署服务的装置的实施例三的一结构框图。如7所示,该装置包括:服务配置平台201、校验模块202、封装模块203、执行模块204和部署模块205;服务配置平台201,用于获取服务配置信息;校验模块202,用于根据预设的配置信息校验规则,校验服务配置信息;封装模块203,用于响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件;执行模块204,用于执行服务配置文件,生成镜像和服务部署文件;部署模块205,用于根据服务部署文件,将镜像中的服务通过服务管理器206进行发布。
在本实施例中,可先由用户通过服务配置平台201的可视化界面(如可视化web用户界面)输入服务配置信息,然后通过服务配置平台201获取用户输入的服务配置信息。
其中,服务配置信息包括:服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息。此外,本领域技术人员在上述服务配置信息的基础上,还可以根据实际需要,灵活增设其他服务配置信息,此处不做限定。
进一步地,服务基础配置信息可包括:服务名称和服务代码分支;编译打包配置信息可包括:编译打包命令;镜像构建配置信息可包括:镜像仓库地址目录和登录命令;服务部署配置信息可包括:服务端口、实例数量和启动命令。本领域技术人员可以根据实际需要进行选择,此处不做限定。
可选地,如图8所示,校验模块202进一步包括:内容校验模块2021和格式校验模块2022;内容校验模块2021,用于根据配置信息内容校验规则,校验服务配置信息的内容对应的种类;格式校验模块2022,用于根据配置信息格式校验规则,校验服务配置信息的内容对应的格式;其中,配置信息校验规则包括配置信息内容校验规则和配置信息格式校验规则。
对于配置信息校验规则,本领域技术人员可以根据实际需要灵活设定,此处不做限定。也即,配置信息内容校验规则和配置信息格式校验规则本领域技术人员可以根据实际需要灵活设定,此处不做限定。
此外,校验模块202还用于:响应于服务配置信息未通过校验的结果,将服务配置信息返回至服务配置平台,并提示修正服务配置信息。
可选地,如图9所示,封装模块203进一步包括:对象生成模块2031和配置文件生成模块2032;对象生成模块2031,用于响应于服务配置信息通过校验的结果,根据服务配置信息和预设的服务配置格式文件,生成与服务配置格式文件中设定的信息格式对应的待封装对象,其中,待封装对象包括任务信息、阶段信息和变量信息;配置文件生成模块2032,用于根据服务配置格式文件中设定的封装格式,将待封装对象封装成服务配置文件。
在本实施例的一种可选实施方式中,执行模块204具体用于:执行服务配置文件,获取镜像构建参数和服务部署参数;调用镜像部署应用程序接口,根据镜像构建参数和服务部署参数,生成镜像和服务部署文件。
其中,镜像部署应用程序接口可包括:镜像构建应用程序接口和服务部署应用程序接口;此时,执行模块具体用于:调用镜像构建应用程序接口,根据镜像构建参数,生成镜像;调用服务部署应用程序接口,根据服务部署参数,生成服务部署文件。
在本实施例的一种可选实施方式中,该装置还包括:列表生成模块;列表生成模块,用于获取预设的服务配置列表,其中,服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息;以及将存储服务配置文件的第三寻址信息添加至服务配置列表。此时,执行模块204具体用于:根据服务配置列表中的第一寻址信息、第二寻址信息和第三寻址信息,获取对应的服务配置文件、镜像构建模板和服务部署模板;执行服务配置文件,获取镜像构建参数和服务部署参数;根据镜像构建参数和服务部署参数,修改镜像构建模板和服务部署模板,生成镜像和服务部署文件。
在该种可选实施方式中,该装置还包括:推送模块,该推送模块用于查询服务配置列表中存储的第一寻址信息、第二寻址信息和第三寻址信息,分别对应获取到镜像构建模板、服务部署模板和服务配置文件,并将其发送至执行模块。
在本实施例中,执行模块还可进一步包括:触发模块;触发模块用于在获取到服务配置文件后,根服务配置文件中包括的变量信息中的服务名称和服务代码分支,将服务配置文件存储执行模块中的分布式版本控制系统的仓库中的对应存储区间;监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则触发执行服务配置文件;若否,则终止执行服务配置文件。
部署模块205,用于根据服务部署文件,将镜像中的服务通过服务管理器206进行发布。其中,服务管理器206可以采用现有技术中的服务管理器,如Kubernetes(简称K8S),本领域技术人员可以根据实际需要进行选择,此处不做限定。但是,应当注意的是,服务部署文件应当与采用的服务管理器相匹配,以保证服务能够通过服务管理器进行发布。
为了使本领域技术人员更为清楚地理解本实施例的自动化集成部署服务的装置,下面结合实际应用场景,对本实施例的自动化集成部署服务的装置的工作过程进行详细介绍。
如图10所示,该自动化集成部署服务的装置是基于GitLab的CICD功能实现的,具体工作过程分为四个阶段,如下所述:
第一阶段:用户通过服务配置平台的用户界面输入服务配置信息,并将服务配置信息发送至校验模块;校验模块获取到服务配置信息后,根据配置信息校验规则,对服务配置信息的内容对应的种类和格式进行校验,在对服务配置信息的内容对应的种类和格式校验的结果为通过校验的结果时,将服务配置信息发送至封装模块,在对服务配置信息的内容对应的种类和格式校验的结果有任一不通过校验的结果时,校验模块将服务配置信息返回至服务配置平台,由用户重新输入服务配置信息;封装模块接收到服务配置信息后,会根据服务配置格式文件中的设定的信息格式,对服务配置信息中的待封装数据进行格式转换,生成包括有阶段信息、变量信息和任务信息的GitLabCI对象(即待封装对象),然后根据服务配置格式文件中设定的封装格式,通过yaml转化工具包将GitLabCI对象封装成.gitlab-ci.yml文件(即服务配置文件),最后获取预设的服务配置列,其中,服务配置列表包括用于存储预设的Dockerfile模板(即模板镜像构建模板)的第一寻址信息和用于存储预设的deployment.yml模板(即服务部署模板)的第二寻址信息,并将存储.gitlab-ci.yml文件的第三寻址信息添加至服务配置列表中。
第二阶段:推送模块通过查询服务配置列表中存储的第一寻址信息、第二寻址信息和第三寻址信息,分别对应获取到Dockerfile模板、deployment.yml模板和.gitlab-ci.yml文件,并将其发送至GitLab Project。
第三阶段:GitLab Project(GitLab中的项目)在获取到.gitlab-ci.yml文件后,根据.gitlab-ci.yml文件中包括的变量信息中的服务名称和服务代码分支,将.gitlab-ci.yml文件存储至GitLab Project的分布式版本控制系统的仓库中的对应存储区间;监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则触发流水线,并调用GitLab的Runner功能;若否,则终止。
第四阶段:GitLab的Runner执行.gitlab-ci.yml文件时,会依照阶段信息确定任务信息中每个任务的执行顺序,如依次执行编译打包任务、镜像构建任务和服务部署任务,同时,还会根据变量信息获取到任务所需的变量,并将获取到的变量发送到任务信息中对应的任务;任务信息中的编译打包任务获取到对应的变量后,会执行编译打包任务中的命令,获取到镜像构建参数和服务部署参数;镜像构建任务在获取到执行编译打包任务生成的镜像构建参数后,会根据镜像构建参数,修改Dockerfile模板,以生成Dockerfile(即镜像),并将其发送至服务部署任务;而服务部署任务在获取到执行编译打包任务生成的服务部署参数后,也会根据服务部署参数,修改deployment.yml模板,以生成deployment.yml文件(即服务部署文件),并在接收到Dockerfile后,根据deployment.yml文件,将Dockerfile中的服务通过Kubernetes(即服务管理器)行发布。
本实施例提供的自动化集成部署服务的装置,在用户输入服务配置信息后,即可实现服务的自动化持续集成与持续发布,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。
图11为本发明提供的自动生成服务配置文件的装置的实施例四的一结构框图。如图11所示,该装置包括:服务配置平台201、校验模块202和封装模块203;服务配置平台201,用于获取服务配置信息,其中,服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;校验模块202,用于根据预设的配置信息校验规则,校验服务配置信息;封装模块203,用于响应于服务配置信息通过校验的结果,将服务配置信息封装成服务配置文件。
需要说明的是,图11所示的自动生成服务配置文件的方法与本发明实施例一和实施例二中的方法相对应,且与本发明实施例三中的装置的服务配置平台201、校验模块202和封装模块203相同,对于其的描述均可参照对于本发明实施例一、实施例二和实施例三的描述,此处不再赘述。
本实施例提供的自动生成服务配置文件的装置,在用户输入服务配置信息后,即可自动生成服务配置文件,无需用户掌握服务配置信息的配置规则和较高的读写程序的能力,降低了GitLab等实现服务集成部署工具的学习和使用门槛,节省了用户的时间。
示例性电子设备
图12为本发明实施例提供的电子设备的结构示意图。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。如图12所示,电子设备30包括一个或多个处理器31和存储器32。
处理器31可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
存储器32可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器31可以运行所述程序指令,以实现上文所述的本公开的各个实施例的软件程序的用于确定实际控制人的方法以及/或者其他期望的功能。在一个示例中,电子设备还可以包括:输入装置33和输出装置34,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
此外,该输入装置33还可以包括例如键盘、鼠标等等。
该输出装置34可以向外部输出各种信息。该输出设备54可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图12中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
示例性计算机程序产品和存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于确定实际控制人的方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的用于确定实际控制人的方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (24)

1.一种自动化集成部署服务的方法,其特征在于,所述方法适用于服务的自动化集成部署和发布,所述方法包括:
获取服务配置信息;
根据预设的配置信息校验规则,校验所述服务配置信息;
响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件;
根据变量信息中的服务名称和服务代码分支,将服务配置文件发送至分布式版本控制系统的仓库中的对应存储区间;
监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则执行所述服务配置文件,生成镜像和服务部署文件;若否,则终止执行所述服务配置文件;
根据所述服务部署文件,发布所述镜像中的服务;
所述响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件之后,还包括:
获取预设的服务配置列表,其中,所述服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息;
将存储所述服务配置文件的第三寻址信息添加至所述服务配置列表。
2.根据权利要求1所述的方法,其特征在于,所述服务配置信息包括:服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息。
3.根据权利要求1所述的方法,其特征在于,所述根据预设的配置信息校验规则,校验所述服务配置信息包括:
获取预设的所述配置信息校验规则,其中,所述配置信息校验规则包括配置信息内容校验规则和配置信息格式校验规则;
根据所述配置信息内容校验规则和所述配置信息格式校验规则,校验所述服务配置信息的内容对应的种类和格式。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述服务配置信息未通过校验的结果,将所述服务配置信息返回至服务配置平台,并提示修正所述服务配置信息。
5.根据权利要求2所述的方法,其特征在于,所述响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件包括:
响应于所述服务配置信息通过校验的结果,根据所述服务配置信息和预设的服务配置格式文件,生成与所述服务配置格式文件中设定的信息格式对应的待封装对象,其中,所述待封装对象包括任务信息、阶段信息和变量信息;
根据所述服务配置格式文件中设定的封装格式,将所述待封装对象封装成所述服务配置文件。
6.根据权利要求1所述的方法,其特征在于,所述执行所述服务配置文件,生成用于部署服务的镜像和服务部署文件包括:
执行所述服务配置文件,获取镜像构建参数和服务部署参数;
调用镜像部署应用程序接口,根据所述镜像构建参数和所述服务部署参数,生成所述镜像和所述服务部署文件。
7.根据权利要求6所述的方法,其特征在于,所述镜像部署应用程序接口包括:镜像构建应用程序接口和服务部署应用程序接口;
所述调用镜像部署应用程序接口,根据所述镜像构建参数和所述服务部署参数,生成所述镜像和所述服务部署文件包括:
调用所述镜像构建应用程序接口,根据所述镜像构建参数,生成所述镜像;
调用所述服务部署应用程序接口,根据所述服务部署参数,生成所述服务部署文件。
8.根据权利要求1所述的方法,其特征在于,所述执行所述服务配置文件,生成用于部署服务的镜像和服务部署文件包括:
根据所述服务配置列表中的所述第一寻址信息、所述第二寻址信息和所述第三寻址信息,获取对应的所述服务配置文件、所述镜像构建模板和所述服务部署模板;
执行所述服务配置文件,获取镜像构建参数和服务部署参数;
根据所述镜像构建参数和所述服务部署参数,修改所述镜像构建模板和所述服务部署模板,生成所述镜像和所述服务部署文件。
9.一种自动生成服务配置文件的方法,其特征在于,所述方法适用于服务的自动化集成部署和发布,所述方法包括:
获取服务配置信息,其中,所述服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;
根据预设的配置信息校验规则,校验所述服务配置信息;
响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件;
根据变量信息中的服务名称和服务代码分支,将服务配置文件发送至分布式版本控制系统的仓库中的对应存储区间;
监测分布式版本控制系统的仓库中存储的代码是否被更新;若是,则执行所述服务配置文件,生成镜像和服务部署文件;若否,则终止执行所述服务配置文件;
所述响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件之后,还包括:
获取预设的服务配置列表,其中,所述服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息;
将存储所述服务配置文件的第三寻址信息添加至所述服务配置列表。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
响应于所述服务配置信息未通过校验的结果,将所述服务配置信息返回至服务配置平台,并提示修正所述服务配置信息。
11.根据权利要求9所述的方法,其特征在于,所述响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件包括:
响应于所述服务配置信息通过校验的结果,根据所述服务配置信息和预设的服务配置格式文件,生成与所述服务配置格式文件中设定的信息格式对应的待封装对象,其中,所述待封装对象包括任务信息、阶段信息和变量信息;
根据所述服务配置格式文件中设定的封装格式,将所述待封装对象封装成所述服务配置文件。
12.一种自动化集成部署服务的装置,其特征在于,所述装置适用于服务的自动化集成部署和发布,所述装置包括:服务配置平台、校验模块、封装模块、执行模块和部署模块;
服务配置平台,用于获取服务配置信息;
校验模块,用于根据预设的配置信息校验规则,校验所述服务配置信息;
封装模块,用于响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件;
执行模块,用于执行所述服务配置文件,生成镜像和服务部署文件;
部署模块,用于根据所述服务部署文件,将所述镜像中的服务通过服务管理器进行发布;
列表生成模块;所述列表生成模块,用于获取预设的服务配置列表,其中,所述服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息,以及将存储所述服务配置文件的第三寻址信息添加至所述服务配置列表;
所述执行模块还包括:触发模块;
触发模块用于在获取到所述服务配置文件后,根据所述服务配置文件中包括的变量信息中的服务名称和服务代码分支,将所述服务配置文件存储至所述执行模块中的分布式版本控制系统的仓库中的对应存储区间;
监测所述分布式版本控制系统的仓库中存储的代码是否被更新;若是,则触发执行所述服务配置文件;若否,则终止执行所述服务配置文件。
13.根据权利要求12所述的装置,其特征在于,所述服务配置信息包括:服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息。
14.根据权利要求12所述的装置,其特征在于,所述校验模块进一步包括:内容校验模块和格式校验模块;
内容校验模块,用于根据所述配置信息内容校验规则,校验所述服务配置信息的内容对应的种类;
格式校验模块,用于根据所述配置信息格式校验规则,校验所述服务配置信息的内容对应的格式;
其中,所述配置信息校验规则包括配置信息内容校验规则和配置信息格式校验规则。
15.根据权利要求12所述的装置,其特征在于,所述校验模块还用于:响应于所述服务配置信息未通过校验的结果,将所述服务配置信息返回至服务配置平台,并提示修正所述服务配置信息。
16.根据权利要求13所述的装置,其特征在于,所述封装模块进一步包括:对象生成模块和配置文件生成模块;
对象生成模块,用于响应于所述服务配置信息通过校验的结果,根据所述服务配置信息和预设的服务配置格式文件,生成与所述服务配置格式文件中设定的信息格式对应的待封装对象,其中,所述待封装对象包括任务信息、阶段信息和变量信息;
配置文件生成模块,用于根据所述服务配置格式文件中设定的封装格式,将所述待封装对象封装成所述服务配置文件。
17.根据权利要求12所述的装置,其特征在于,所述执行模块具体用于:执行所述服务配置文件,获取镜像构建参数和服务部署参数,以及调用镜像部署应用程序接口,根据所述镜像构建参数和所述服务部署参数,生成所述镜像和所述服务部署文件。
18.根据权利要求17所述的装置,其特征在于,所述镜像部署应用程序接口包括:镜像构建应用程序接口和服务部署应用程序接口;
所述执行模块具体用于:调用所述镜像构建应用程序接口,根据所述镜像构建参数,生成所述镜像,以及调用所述服务部署应用程序接口,根据所述服务部署参数,生成所述服务部署文件。
19.根据权利要求12所述的装置,其特征在于,所述执行模块具体用于:
根据所述服务配置列表中的所述第一寻址信息、所述第二寻址信息和所述第三寻址信息,获取对应的所述服务配置文件、所述镜像构建模板和所述服务部署模板;
执行所述服务配置文件,获取镜像构建参数和服务部署参数;以及
根据所述镜像构建参数和所述服务部署参数,修改所述镜像构建模板和所述服务部署模板,生成所述镜像和所述服务部署文件。
20.一种自动生成服务配置文件的装置,其特征在于,所述装置适用于服务的自动化集成部署和发布,所述装置包括:服务配置平台、校验模块和封装模块;
服务配置平台,用于获取服务配置信息,其中,所述服务配置信息包括服务基础配置信息、编译打包配置信息、镜像构建配置信息和服务部署配置信息;
校验模块,用于根据预设的配置信息校验规则,校验所述服务配置信息;
封装模块,用于响应于所述服务配置信息通过校验的结果,将所述服务配置信息封装成服务配置文件;
触发模块,用于在获取到所述服务配置文件后,根据所述服务配置文件中包括的变量信息中的服务名称和服务代码分支,将所述服务配置文件存储至执行模块中的分布式版本控制系统的仓库中的对应存储区间;
监测所述分布式版本控制系统的仓库中存储的代码是否被更新;若是,则触发执行所述服务配置文件;若否,则终止执行所述服务配置文件;
列表生成模块;所述列表生成模块,用于获取预设的服务配置列表,其中,所述服务配置列表包括用于存储预设的镜像构建模板的第一寻址信息和用于存储预设的服务部署模板的第二寻址信息,以及将存储所述服务配置文件的第三寻址信息添加至所述服务配置列表。
21.根据权利要求20所述的装置,其特征在于,所述校验模块还用于:响应于所述服务配置信息未通过校验的结果,将所述服务配置信息返回至服务配置平台,并提示修正所述服务配置信息。
22.根据权利要求20所述的装置,其特征在于,所述封装模块进一步包括:对象生成模块和配置文件生成模块;
对象生成模块,用于响应于所述服务配置信息通过校验的结果,根据所述服务配置信息和预设的服务配置格式文件,生成与所述服务配置格式文件中设定的信息格式对应的待封装对象,其中,所述待封装对象包括任务信息、阶段信息和变量信息;
配置文件生成模块,用于根据所述服务配置格式文件中设定的封装格式,将所述待封装对象封装成所述服务配置文件。
23.一种电子设备,其特征在于,包括:
存储器,其上存储有计算机程序;
处理器,用于执行所述存储器中的所述计算机程序,以实现权利要求1-11中任一项所述方法的步骤。
24.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-11中任一项所述方法的步骤。
CN202210083016.8A 2022-01-25 2022-01-25 自动化集成部署服务的方法和装置、以及电子设备和存储介质 Active CN114115954B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210083016.8A CN114115954B (zh) 2022-01-25 2022-01-25 自动化集成部署服务的方法和装置、以及电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210083016.8A CN114115954B (zh) 2022-01-25 2022-01-25 自动化集成部署服务的方法和装置、以及电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN114115954A CN114115954A (zh) 2022-03-01
CN114115954B true CN114115954B (zh) 2022-05-17

Family

ID=80361035

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210083016.8A Active CN114115954B (zh) 2022-01-25 2022-01-25 自动化集成部署服务的方法和装置、以及电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN114115954B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114840225B (zh) * 2022-04-26 2023-09-19 光大科技有限公司 一种应用部署方法、装置、存储介质及电子装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052374A (zh) * 2017-12-29 2018-05-18 郑州云海信息技术有限公司 一种部署容器微服务的方法及装置
CN110347395A (zh) * 2018-04-03 2019-10-18 中移信息技术有限公司 基于云计算平台的软件发布方法及装置
CN111198744A (zh) * 2018-11-16 2020-05-26 中标软件有限公司 自动化应用程序容器化和镜像备份发布的方法
CN113703730A (zh) * 2021-08-30 2021-11-26 平安普惠企业管理有限公司 持续集成方法、装置、计算机设备及存储介质
CN113741909A (zh) * 2021-08-31 2021-12-03 平安国际智慧城市科技股份有限公司 微服务部署方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715637B2 (en) * 2017-03-22 2020-07-14 Mastercard International Incorporated Systems and methods for automated application deployment management
CN109687987A (zh) * 2017-10-19 2019-04-26 北京金山云网络技术有限公司 一种云平台部署方法、装置、电子设备及可读存储介质
US20200133651A1 (en) * 2018-10-24 2020-04-30 CA Software Österreich GmbH Release automation service in software development tools
CN109634657A (zh) * 2018-12-14 2019-04-16 武汉烽火信息集成技术有限公司 一种微服务打包部署方法及系统
CN112015470B (zh) * 2020-09-09 2022-02-01 平安科技(深圳)有限公司 模型部署方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108052374A (zh) * 2017-12-29 2018-05-18 郑州云海信息技术有限公司 一种部署容器微服务的方法及装置
CN110347395A (zh) * 2018-04-03 2019-10-18 中移信息技术有限公司 基于云计算平台的软件发布方法及装置
CN111198744A (zh) * 2018-11-16 2020-05-26 中标软件有限公司 自动化应用程序容器化和镜像备份发布的方法
CN113703730A (zh) * 2021-08-30 2021-11-26 平安普惠企业管理有限公司 持续集成方法、装置、计算机设备及存储介质
CN113741909A (zh) * 2021-08-31 2021-12-03 平安国际智慧城市科技股份有限公司 微服务部署方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于Docker-Swarm的微服务管理技术研究与实现;吴杰楚;《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑(月刊)》;20190115(第12期);第I139-162页 *

Also Published As

Publication number Publication date
CN114115954A (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
CN114115852A (zh) 可视化服务编排方法、装置、设备及介质
WO2016200889A1 (en) System, method, and device for remotely operating a server
CN111061489B (zh) 一种多平台编译检测方法、装置、设备及介质
CN114115954B (zh) 自动化集成部署服务的方法和装置、以及电子设备和存储介质
CN114115838A (zh) 一种基于分布式组件和云平台的数据交互方法及系统
CN113254033A (zh) 一种母盘文件生成方法、装置、电子设备及存储介质
CN103970581A (zh) 创建虚拟资源包的方法和设备
CN112000320A (zh) 自动化代码生成方法、装置、设备及存储介质
CN114546473A (zh) 自动化集成部署服务的方法和装置、以及电子设备和存储介质
CN110704025A (zh) 编码规范工具的生成方法和装置、存储介质、电子设备
CN113259397B (zh) 一种执行预案的方法、装置、设备及可读存储介质
CN110597662A (zh) 备份数据自动验证方法、装置、用户设备及存储介质
JP2024508452A (ja) イベントベースのアプリケーションのホスティング
CN115525534A (zh) 基于swagger的接口测试的测试用例生成方法、生成平台
US10048972B2 (en) Method for model-based generation of startup configurations of embedded systems
CN113031944A (zh) 基于模板的业务开通装置及方法
CN116225415A (zh) 一种前端工程化方法及系统
CN111813439B (zh) 发布材料质量控制方法、装置、设备和计算机存储介质
CN110659062B (zh) 前端脚手架的配置方法和装置、可读存储介质、电子设备
CN114527993A (zh) 应用程序部署方法、装置、设备及介质
CN114356396A (zh) 一种适配多种服务的服务发布方法及装置
CN108762736B (zh) 项目分支的管理方法、装置、设备及计算机可读存储介质
CN113094086A (zh) 组件集成方法、装置、计算机可读存储介质及电子设备
CN105678447A (zh) 电网上下级调度间cim模型校验服务化方法
CN112035650A (zh) 信息处理方法、装置、计算机可读存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant