CN110262806A - 一种支持自动化服务编排的DevOps系统 - Google Patents
一种支持自动化服务编排的DevOps系统 Download PDFInfo
- Publication number
- CN110262806A CN110262806A CN201910536337.7A CN201910536337A CN110262806A CN 110262806 A CN110262806 A CN 110262806A CN 201910536337 A CN201910536337 A CN 201910536337A CN 110262806 A CN110262806 A CN 110262806A
- Authority
- CN
- China
- Prior art keywords
- application
- deployment
- subsystem
- version
- devops
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种支持自动化服务编排的DevOps系统,包括打包与部署子系统、版本回滚子系统、应用卸载子系统、日志查看子系统、伸缩扩展子系统、远程调试子系统,其中,打包与部署子系统用于部署一个项目下的多个应用;版本回滚子系统用于回滚某一个应用;应用卸载子系统用于卸载某一个应用;日志查看子系统用于查看某一个应用的日志;伸缩扩展子系统用于伸缩某一个应用;远程调试子系统用于远程调试某一个应用。本申请基于Maven的插件体系作为载体,在此之上构建DevOps系统,通过配置方式完成配置组装,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件,实现对自动化服务编排的支持。
Description
技术领域
本发明涉及软件开发技术领域,尤其是涉及一种支持自动化服务编排的DevOps系统。
背景技术
DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
DevOps的核心在于连接开发与运维,使之可以高效的沟通协作以缩短软件研发周期,提升交付速度及质量。
目前市场有两种主流的DevOps方案:
一、以阿里云、华为云为代表的云厂商DevOps方案,阿里云的方案核心是使用其CodePipeline(https://help.aliyun.com/product/55903.html),华为云也类似;此方案的问题在于它只是CI/CD工具,没有解决开发与运维的沟通协作,并不能称之为DevOps,并且平台依赖严重,不通用,各厂商都有自己的一套标准,互不兼容,导致平台绑定,无法迁移。
二、以Jenkins X、Gitlab CI为代表的CI/CD工具主导的DevOps流程
此方案以配置文件为核心(比如JenkinsX的jenkinsfile,Gitlab CI的.gitlab-ci.yml文件),可由开发人员定义发布部署流程。此方案的问题在于集成度低、操作不友好。
上述两种方案都没有实现自动化的服务编排。
在微服务盛行的今天,一个项目往往会由多个服务组成,上述方案需要为每个服务都独立配置发布部署流程,需要显示定义代码发布的先后顺序以避免模块间的依赖问题,这相当的繁琐且容易出错。
如何实现自动化地服务编排、避免出错是目前亟待解决的问题。
发明内容
本发明的目的是提供一种支持自动化服务编排的DevOps系统,通过打包与部署一个项目下的多个应用,再进行版本回滚、应用卸载、日志查看、伸缩扩展等的自动化服务编排,实现DevOps系统。
本发明的上述发明目的通过以下技术方案得以实现:
一种支持自动化服务编排的DevOps系统,包括打包与部署子系统、版本回滚子系统、应用卸载子系统、日志查看子系统、伸缩扩展子系统、远程调试子系统,其中,打包与部署子系统用于部署一个项目下的多个应用;版本回滚子系统用于回滚某一个应用;应用卸载子系统用于卸载某一个应用;日志查看子系统用于查看某一个应用的日志;伸缩扩展子系统用于伸缩某一个应用;远程调试子系统用于远程调试某一个应用。
CI/CD工具在检测到有变更或手工触发时,从代码版本管理工具获取代码,执行打包与部署子系统,打包与部署子系统,包括以下步骤:
A1、采用Maven为项目中的各应用做依赖排序;
A2、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
A3、部署探测,确定要部署的应用;
A4、模式检查,判断当前是否需要启用版本重用模式;如启用,进入步骤A7,若不启用,进入步骤A5;
A5、编译准备,根据应用类型,不同应用类型执行不同的编译方案;
A6、单元测试;
A7、发布部署,根据部署类型,不同部署类型执行不同的发布方案;
A8、结果通知,发送请求完成结果通知。
本发明进一步设置为:步骤A1中,采用Maven自身的Reactor机制为项目中的各应用做依赖排序。
本发明进一步设置为:步骤A2中,配置方式包括:通过项目目录下的.devops文件进行配置、或通过Maven在命令行中作为参数传入进行配置中的至少一种。
本发明进一步设置为:步骤A3中,部署探测按照命令、配置、版本比对、依赖传递分析的优先级顺序进行,其中,命令的优先级最高,依赖传递分析的优先级最低,包括:
B1、根据应用的命令行中的指定确定是否在应用中进行部署;
B2、根据应用的配置中的指定确定是否进行部署;
B3、根据版本比对结果确定是否进行部署,将已部署的各应用版本与当前各应用的代码进行比对,找到有代码变更的应用,确定为要部署的应用;
B4、根据依赖传递分析确定是否进行部署,对没有代码变更的应用,当其依赖包有变更时,确定为要部署的应用。
本发明进一步设置为:包括版本重用模式与正常模式时两种情况,分别为:
A71、在版本重用模式,版本重用模式是指应用部署时重用某一环境代码或镜像的要求,在Kubernetes方式,从被重用的环境下获取原始镜像并上传到当前环境的镜像库中,再部署到Kubernetes,包括一个Service、一个Deployment;
A72、在正常模式,包括:
A721、在Maven方式,直接使用mvn deploy;
A722、在Kubernetes方式,先编译Docker Image并上传到Registry,再部署到Kubernetes,包含一个Service、一个Deployment;
A723、部署完成后打上当前版本号及当前部署的内容,版本号为当前的模块的GitCommitId,部署的内容由部署类型插件持有。
本发明进一步设置为:版本回滚子系统包括以下步骤:
D1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
D2、从版本库中获取当前模块已部署的版本信息并进行显示;
D3、选择要回滚到的版本;
D4、替换选定的回滚版本,根据部署类型,为不同部署类型执行不同的回滚方案。
本发明进一步设置为:应用卸载子系统包括以下步骤:
E1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
E2、执行卸载,根据部署类型,为不同部署类型执行不同的卸载方案。
本发明进一步设置为:日志查看子系统包括以下步骤:
F1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
F2、执行日志查看,根据部署类型,为不同部署类型执行不同的日志查看方案。
本发明进一步设置为:伸缩扩展子系统包括以下步骤:
G1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
G2、根据命令行参数确定是手工触发或自动触发,针对不同的触发方式设定相关参数;
G3、执行伸缩,根据部署类型,为不同部署类型执行不同的伸缩方案。
本发明进一步设置为:远程调试子系统包括以下步骤:
H1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
H2、根据应用类型,获取不同应用的Debug命令;
H3、根据部署类型,自动进入到当前的执行节点执行Debug命令;
H4、根据部署类型转发/映射Debug连接的远程IP与端口到Debug发起节点进行Debug。
与现有技术相比,本发明的有益技术效果为:
1.本申请通过配置方式完成配置组装,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件,实现对自动化服务编排的支持;
2.进一步地,根据Git变更记录确定是否需要进行部署,实现了小版本发布;
3.进一步地,支持应用类型插件执行不同的配置管理、编译方案;支持部署类型插件执行不同的部署、卸载、回滚等操作,实现应用类型及部署方案具有广泛性。
附图说明
图1是本发明的一个具体实施例的打包与部署流程示意图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
一种支持自动化服务编排的DevOps系统,包括打包与部署子系统、版本回滚子系统、应用卸载子系统、日志查看子系统、伸缩扩展子系统、远程调试子系统,其中,打包与部署子系统用于部署一个项目下的多个应用;版本回滚子系统用于回滚某一个应用;应用卸载子系统用于卸载某一个应用;日志查看子系统用于查看某一个应用的日志;伸缩扩展子系统用于伸缩某一个应用;远程调试子系统用于远程调试某一个应用。
本申请基于Maven的插件体系作为载体,在此之上构建DevOps系统。
CI/CD工具在检测到有变更或手工触发时,从代码版本管理工具获取代码,执行打包与部署子系统。
具体实施方式一
本申请的一个具体实施例中,打包与部署子系统,包括以下步骤:
A1、采用Maven为项目中的各应用做依赖排序;
A2、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
A3、部署探测,确定要部署的应用;
A4、模式检查,判断当前是否需要启用版本重用模式;如启用,进入步骤A7,若不启用,进入步骤A5;
A5、编译准备,根据应用类型,不同应用类型执行不同的编译方案;
A6、单元测试;
A7、发布部署,根据部署类型,不同部署类型执行不同的发布方案;
A8、结果通知,发送请求完成结果通知。
具体地,步骤A1中,采用Maven自身的Reactor机制为项目中的各应用做依赖排序。
步骤A2中,配置方式包括以下两种:
A21、通过项目目录下的.devops文件进行配置;
A22、通过Maven在命令行中作为参数传入进行配置。
在本申请的一个具体实施例中,通过Maven工具的pom.xml中的properties作为参数传入,或是mvn–Dxxx中作为参数传入。
优选的配置方式是:相对固定的、不敏感的信息配置到.devops中,而诸如Kubernetes配置、Harbor用户名/密码等信息用Maven在命令行中作为参数传入。
在本申请的一个具体实施例中,配置方式如下:
设置.devops配置的继承规则为:
A2-1:.devops放置在任意应用或模块的根目录下,应用会继承项目的配置;根目录与pom.xml同级。
A2-2:.devops支持多环境(profile)应用,各环境应用继承默认环境的配置。
步骤A3中,部署探测按照命令、配置、版本比对、依赖传递分析的优先级顺序进行,其中,命令的优先级最高,依赖传递分析的优先级最低,包括:
B1、根据应用的命令行中的指定确定是否在应用中进行部署;
B2、根据应用的配置中的指定确定是否进行部署;
B3、根据版本比对结果确定是否进行部署,将已部署的各应用版本与当前各应用的代码进行比对,找到有代码变更的应用,确定为要部署的应用;
B4、根据依赖传递分析确定是否进行部署,对没有代码变更的应用,当其依赖包有变更时,确定为要部署的应用。
具体地,
如果在应用的命令行中指定部署应用,则后续就不进行探测,直接进行部署。
如果在配置中指定了是否部署,则根据配置进行。若配置中指定skip:true则表示不需要部署应用。
根据Git变更记录比对可自动感知哪些模块需要部署,进而实现小版本发布。
比对已部署的各应用版本与当前各应用的代码,找到有代码变更的应用,视之为要部署的应用;具体为:
B31、从版本库中获取当前模块已部署的版本号,版本号为Git的CommitId;版本库包括Kuberenetes的ConfigMap、数据库记录;
B32、如果版本库中不存在当前模块的版本则表示需要部署,结束判断,执行“gitdiff--name-only<已部署的版本号>HEAD”获取变更的文件列表,记为C;
B33、如果变更的文件列表C为空,则表示不需要部署,结束判断;
B34、针对一些特殊的、即便变更也不需要部署的文件,通过配置文件标注为C’,表示跳过变更检查的文件列表,如果C与C’的差集为空,则表示不需要部署,反之表示需要部署。
在本申请的一个具体实施例中,步骤A5中,根据配置装配时分析到的应用类型,为不同应用类型执行不同的编译方案;包括,
A51、Spring Boot/Cloud应用需要执行repackage以打出fatjar;
A52、NodeJS应用需要执行对应的node命令完成打包。
在本申请的一个具体实施例中,步骤A6中,由使用方自行决定是否进行单元测试;如果不进行测试,则设置-Dmaven.test.skip=true。
在本申请的一个具体实施例中,步骤A7中,包括版本重用模式与正常模式时两种情况,分别为:
A71、在版本重用模式,版本重用模式是指应用部署时重用某一环境代码或镜像的要求,在Kubernetes方式,从被重用的环境下获取原始镜像并上传到当前环境的镜像库中,再部署到Kubernetes,包括一个Service、一个Deployment;
A72、在正常模式,包括:
A721、在Maven方式,直接使用mvn deploy;
A722、在Kubernetes方式,先编译Docker Image并上传到Registry,再部署到Kubernetes,包含一个Service、一个Deployment;
A723、部署完成后打上当前版本号及当前部署的内容,版本号为当前的模块的GitCommitId,部署的内容由部署类型插件持有。
如Kubernetes插件的Service和Deployment,保存在Kubernetes的ConfigMap中,或者数据库中。
在本申请的一个具体实施例中,步骤A8中,采用发送钉钉或HTTP请求完成结果通知;其中,HTTP通知可调起自动化测试系统。
具体实施方式二
本申请的版本回滚子系统,包括以下步骤:
D1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
D2、从版本库中获取当前模块已部署的版本信息并进行显示;
D3、选择要回滚到的版本;
D4、替换选定的回滚版本,根据部署类型,为不同部署类型执行不同的回滚方案。
其中,D1的配置装置与打包与部署中的配置装置相同。
应用卸载子系统包括以下步骤:
E1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
E2、执行卸载,根据部署类型,为不同部署类型执行不同的卸载方案。
其中,E1的配置装置与打包与部署中的配置装置相同。
日志查看子系统包括以下步骤:
F1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
F2、执行日志查看,根据部署类型,为不同部署类型执行不同的日志查看方案。
其中,F1的配置装置与打包与部署中的配置装置相同。
伸缩扩展子系统包括以下步骤:
G1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
G2、根据命令行参数确定是手工触发或自动触发,针对不同的触发方式设定相关参数;
G3、执行伸缩,根据部署类型,为不同部署类型执行不同的伸缩方案。
其中,伸缩扩展用于手工或在特定条件下自动触发某一个应用的弹性伸缩,格式如下“mvn devops:scale-DautoScale=?-Dreplicas=?-DminReplicas=?-DmaxReplicas=?-DcpuAvg=?”。
F1的配置装置与打包与部署中的配置装置相同。
如果命令行参数“autoScale(自动伸缩)”为false表示手工触发,需要指定“replicas(副本数)”的值。
如果命令行参数“autoScale(自动伸缩)”为true表示自动触发,需要指定在什么条件下,自动伸缩的“minReplicas(最小副本数)”及“maxReplicas(最大副本数);
如在“cpuAvg(CPU平均负载)”高于指定的百分比时,自动伸缩的最小副本数、最大副本数。
执行伸缩是指在何种条件下触发哪种操作时可以扩展,如内存占用高于X时增加内存上限;TPS高于Y时添加带宽上限等,就是执行伸缩。
远程调试子系统包括以下步骤:
H1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
H2、根据应用类型,获取不同应用的Debug命令;
H3、根据部署类型,自动进入到当前的执行节点执行Debug命令;
H4、根据部署类型转发/映射Debug连接的远程IP与端口到Debug发起节点进行Debug。
本具体实施方式的实施例均为本发明的较佳实施例,并非依此限制本发明的保护范围,故:凡依本发明的结构、形状、原理所做的等效变化,均应涵盖于本发明的保护范围之内。
Claims (10)
1.一种支持自动化服务编排的DevOps系统,其特征在于:包括打包与部署子系统、版本回滚子系统、应用卸载子系统、日志查看子系统、伸缩扩展子系统、远程调试子系统,其中,打包与部署子系统用于部署一个项目下的多个应用;版本回滚子系统用于回滚某一个应用;应用卸载子系统用于卸载某一个应用;日志查看子系统用于查看某一个应用的日志;伸缩扩展子系统用于伸缩某一个应用;远程调试子系统用于远程调试某一个应用。
2.根据权利要求1所述的,其特征在于:CI/CD工具在检测到有变更或手工触发时,从代码版本管理工具获取代码,执行打包与部署子系统,打包与部署子系统,包括以下步骤:
A1、采用Maven自身的Reactor机制为项目中的各应用做依赖排序;
A2、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
A3、部署探测,确定要部署的应用;
A4、模式检查,判断当前是否需要启用版本重用模式;如启用,进入步骤A7,若不启用,进入步骤A5;
A5、编译准备,根据应用类型,不同应用类型执行不同的编译方案;
A6、单元测试;
A7、发布部署,根据部署类型,不同部署类型执行不同的发布方案;
A8、结果通知,发送请求完成结果通知。
3.根据权利要求2所述的支持自动化服务编排的DevOps系统,其特征在于:步骤A2中,配置方式包括:通过项目目录下的.devops文件进行配置、或通过Maven在命令行中作为参数传入进行配置中的至少一种。
4.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:步骤A3中,部署探测按照命令、配置、版本比对、依赖传递分析的优先级顺序进行,其中,命令的优先级最高,依赖传递分析的优先级最低,包括:
B1、根据应用的命令行中的指定确定是否在应用中进行部署;
B2、根据应用的配置中的指定确定是否进行部署;
B3、根据版本比对结果确定是否进行部署,将已部署的各应用版本与当前各应用的代码进行比对,找到有代码变更的应用,确定为要部署的应用;
B4、根据依赖传递分析确定是否进行部署,对没有代码变更的应用,当其依赖包有变更时,确定为要部署的应用。
5.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:步骤A7中,包括版本重用模式与正常模式时两种情况,分别为:
A71、在版本重用模式,版本重用模式是指应用部署时重用某一环境代码或镜像的要求,在Kubernetes方式,从被重用的环境下获取原始镜像并上传到当前环境的镜像库中,再部署到Kubernetes,包括一个Service、一个Deployment;
A72、在正常模式,包括:
A721、在Maven方式,直接使用mvn deploy;
A722、在Kubernetes方式,先编译Docker Image并上传到Registry,再部署到Kubernetes,包含一个Service、一个Deployment;
A723、部署完成后打上当前版本号及当前部署的内容,版本号为当前的模块的GitCommitId,部署的内容由部署类型插件持有;
如Kubernetes插件的Service和Deployment,保存在Kubernetes的ConfigMap,或者数据库中。
6.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:版本回滚子系统包括以下步骤:
D1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
D2、从版本库中获取当前模块已部署的版本信息并进行显示;
D3、选择要回滚到的版本;
D4、替换选定的回滚版本,根据部署类型,为不同部署类型执行不同的回滚方案。
7.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:应用卸载子系统包括以下步骤:
E1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
E2、执行卸载,根据部署类型,为不同部署类型执行不同的卸载方案。
8.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:日志查看子系统包括以下步骤:
F1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
F2、执行日志查看,根据部署类型,为不同部署类型执行不同的日志查看方案。
9.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:伸缩扩展子系统包括以下步骤:
G1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
G2、根据命令行参数确定是手工触发或自动触发,针对不同的触发方式设定相关参数;
G3、执行伸缩,根据部署类型,为不同部署类型执行不同的伸缩方案。
10.根据权利要求1所述的支持自动化服务编排的DevOps系统,其特征在于:远程调试子系统包括以下步骤:
H1、配置装配,进行devops文件配置,确定各应用的类型及部署方式以选择对应的应用类型插件和部署类型插件;
H2、根据应用类型,获取不同应用的Debug命令;
H3、根据部署类型,自动进入到当前的执行节点执行Debug命令;
H4、根据部署类型转发/映射Debug连接的远程IP与端口到Debug发起节点进行Debug。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910536337.7A CN110262806B (zh) | 2019-06-20 | 2019-06-20 | 一种支持自动化服务编排的DevOps系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910536337.7A CN110262806B (zh) | 2019-06-20 | 2019-06-20 | 一种支持自动化服务编排的DevOps系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110262806A true CN110262806A (zh) | 2019-09-20 |
CN110262806B CN110262806B (zh) | 2022-10-18 |
Family
ID=67919779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910536337.7A Active CN110262806B (zh) | 2019-06-20 | 2019-06-20 | 一种支持自动化服务编排的DevOps系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110262806B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078270A (zh) * | 2019-11-20 | 2020-04-28 | 北京国舜科技股份有限公司 | 应用安全管控方法、装置、电子设备及存储介质 |
CN111142899A (zh) * | 2019-12-12 | 2020-05-12 | 东软集团股份有限公司 | 数据库脚本执行方法、装置、存储介质及电子设备 |
CN111506304A (zh) * | 2020-04-21 | 2020-08-07 | 科大国创云网科技有限公司 | 一种基于参数配置的流水线构建方法及系统 |
CN112000343A (zh) * | 2020-08-24 | 2020-11-27 | 浪潮云信息技术股份公司 | 使用Devops在Kubernetes中部署多版本服务的方法及系统 |
CN112506613A (zh) * | 2020-12-11 | 2021-03-16 | 四川长虹电器股份有限公司 | Gitlab-ci自动识别Maven变更子模块并推送docker镜像的方法 |
CN112558981A (zh) * | 2020-12-23 | 2021-03-26 | 上海万向区块链股份公司 | 基于jenkinsfile的自定义编译部署方法及系统 |
CN114064213A (zh) * | 2021-11-16 | 2022-02-18 | 四川启睿克科技有限公司 | 基于Kubernets容器环境的快速编排服务方法及系统 |
CN114064213B (zh) * | 2021-11-16 | 2024-05-31 | 四川启睿克科技有限公司 | 基于Kubernets容器环境的快速编排服务方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2422682A1 (en) * | 2002-03-20 | 2003-09-20 | Bestbuy.Com, Llc | Software building and deployment system and method |
CN105739966A (zh) * | 2016-01-19 | 2016-07-06 | 浪潮软件集团有限公司 | 一种持续集成的方法及装置 |
CN106104467A (zh) * | 2014-06-30 | 2016-11-09 | 北京新媒传信科技有限公司 | 一种自动化部署方法和终端 |
US20170249141A1 (en) * | 2016-02-26 | 2017-08-31 | Red Hat, Inc. | Hot deployment in a distributed cluster system |
US20180074852A1 (en) * | 2016-09-14 | 2018-03-15 | Salesforce.Com, Inc. | Compact Task Deployment for Stream Processing Systems |
CN109828886A (zh) * | 2018-12-29 | 2019-05-31 | 南京南瑞信息通信科技有限公司 | 一种容器云环境下的ci/cd监控方法和系统 |
-
2019
- 2019-06-20 CN CN201910536337.7A patent/CN110262806B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2422682A1 (en) * | 2002-03-20 | 2003-09-20 | Bestbuy.Com, Llc | Software building and deployment system and method |
CN106104467A (zh) * | 2014-06-30 | 2016-11-09 | 北京新媒传信科技有限公司 | 一种自动化部署方法和终端 |
CN105739966A (zh) * | 2016-01-19 | 2016-07-06 | 浪潮软件集团有限公司 | 一种持续集成的方法及装置 |
US20170249141A1 (en) * | 2016-02-26 | 2017-08-31 | Red Hat, Inc. | Hot deployment in a distributed cluster system |
US20180074852A1 (en) * | 2016-09-14 | 2018-03-15 | Salesforce.Com, Inc. | Compact Task Deployment for Stream Processing Systems |
CN109828886A (zh) * | 2018-12-29 | 2019-05-31 | 南京南瑞信息通信科技有限公司 | 一种容器云环境下的ci/cd监控方法和系统 |
Non-Patent Citations (6)
Title |
---|
GAODING-INC: "基于 Git、Svn 变更检测实现可增量构建的前端持续集成解决方案 #7", 《HTTPS://GITHUB.COM/GAODING-INC/CI-TASK-RUNNER/ISSUES/7》 * |
SUNYAONING: "基于GitLab+Docker+K8S的持续集成和交付", 《HTTPS://GITEE.COM/LINLION/GITLAB-DOCKER-K8S/BLOB/MASTER/README.MD》 * |
丁振凡: "《Spring3.X编程技术与应用》", 31 August 2013, 北京邮电大学出版社 * |
上课睡觉觉: "maven的几种常用打包工具 VS SpringBoot的打包工具", 《HTTPS://WWW.JIANSHU.COM/P/93888E19DB7E》 * |
许晓斌: "《Maven实战》", 30 November 2010, 机械工业出版社 * |
魏春来等: "基于微服务的DevOps研究与实现", 《网络安全和信息化》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111078270A (zh) * | 2019-11-20 | 2020-04-28 | 北京国舜科技股份有限公司 | 应用安全管控方法、装置、电子设备及存储介质 |
CN111142899A (zh) * | 2019-12-12 | 2020-05-12 | 东软集团股份有限公司 | 数据库脚本执行方法、装置、存储介质及电子设备 |
CN111142899B (zh) * | 2019-12-12 | 2024-03-22 | 东软集团股份有限公司 | 数据库脚本执行方法、装置、存储介质及电子设备 |
CN111506304A (zh) * | 2020-04-21 | 2020-08-07 | 科大国创云网科技有限公司 | 一种基于参数配置的流水线构建方法及系统 |
CN112000343A (zh) * | 2020-08-24 | 2020-11-27 | 浪潮云信息技术股份公司 | 使用Devops在Kubernetes中部署多版本服务的方法及系统 |
CN112000343B (zh) * | 2020-08-24 | 2024-02-20 | 浪潮云信息技术股份公司 | 使用Devops在Kubernetes中部署多版本服务的方法及系统 |
CN112506613A (zh) * | 2020-12-11 | 2021-03-16 | 四川长虹电器股份有限公司 | Gitlab-ci自动识别Maven变更子模块并推送docker镜像的方法 |
CN112558981A (zh) * | 2020-12-23 | 2021-03-26 | 上海万向区块链股份公司 | 基于jenkinsfile的自定义编译部署方法及系统 |
CN112558981B (zh) * | 2020-12-23 | 2024-02-06 | 上海万向区块链股份公司 | 基于jenkinsfile的自定义编译部署方法及系统 |
CN114064213A (zh) * | 2021-11-16 | 2022-02-18 | 四川启睿克科技有限公司 | 基于Kubernets容器环境的快速编排服务方法及系统 |
CN114064213B (zh) * | 2021-11-16 | 2024-05-31 | 四川启睿克科技有限公司 | 基于Kubernets容器环境的快速编排服务方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110262806B (zh) | 2022-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110262806A (zh) | 一种支持自动化服务编排的DevOps系统 | |
US11281570B2 (en) | Software testing method, system, apparatus, device medium, and computer program product | |
CN105094783B (zh) | 安卓应用稳定性测试的方法及装置 | |
CN104699616B (zh) | 一种应用测试的方法、装置及系统 | |
US20080155338A1 (en) | Software testing framework for multiple operating system, hardware, and software configurations | |
US20040221268A1 (en) | Off-device class/resource loading methods, systems and computer program products for debugging a Java application in a Java micro device | |
CN109885480B (zh) | 一种基于调试桥的自动化界面兼容性测试方法及装置 | |
US10579513B2 (en) | Test run control method and apparatus | |
CN108132876B (zh) | 一种基于注入方式的嵌入式软件目标码单元测试方法 | |
CN111427580A (zh) | 一种软件开发工具包接入方法及装置、存储介质 | |
CN106648762A (zh) | 一种搭建开发环境的方法及装置 | |
CN110413503A (zh) | 一种应用程序性能监控方法、装置、设备及存储介质 | |
CN106021004B (zh) | 用户行为模拟单元、测试系统、以及测试方法 | |
CN112256588A (zh) | 应用程序测试的资源配置方法、计算机可读存储介质及测试机 | |
CN109684205B (zh) | 系统测试方法、装置、电子设备及存储介质 | |
CN116643761A (zh) | 一种定制化镜像制作及部署方法、装置、终端及介质 | |
CN111209197B (zh) | 应用程序持续集成测试方法、系统、设备和存储介质 | |
CN115629815A (zh) | 可验证emmc用户接口的fpga原型验证平台 | |
FR2535487A1 (fr) | Procede d'integration d'un logiciel en langage evolue a un materiel et dispositif pour sa mise en oeuvre | |
CN108804328A (zh) | 一种安卓应用兼容性测试的方法 | |
CN107977315B (zh) | 一种基于Bootloader方式的嵌入式软件目标码单元测试方法 | |
CN112433946A (zh) | 接口测试管理方法、装置、设备及存储介质 | |
CN101251824B (zh) | 测试公共对象请求代理结构的方法和测试工具 | |
CN117435510B (zh) | 自动化测试方法、终端设备及计算机可读存储介质 | |
CN116149707B (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 |