CN112711411B - 一种基于Kubernetes及docker的CI/CD流水线系统 - Google Patents
一种基于Kubernetes及docker的CI/CD流水线系统 Download PDFInfo
- Publication number
- CN112711411B CN112711411B CN202011526167.3A CN202011526167A CN112711411B CN 112711411 B CN112711411 B CN 112711411B CN 202011526167 A CN202011526167 A CN 202011526167A CN 112711411 B CN112711411 B CN 112711411B
- Authority
- CN
- China
- Prior art keywords
- pipeline
- container
- kubernetes
- template
- mirror image
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 26
- 238000013515 script Methods 0.000 claims abstract description 22
- 238000010276 construction Methods 0.000 claims abstract description 18
- 230000008569 process Effects 0.000 claims description 14
- 238000012544 monitoring process Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 3
- 238000004806 packaging method and process Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 8
- 230000010354 integration Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 238000004140 cleaning Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002459 sustained effect Effects 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000002244 precipitate Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/447—Target code generation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于Kubernetes及docker的CI/CD流水线系统、以及采用所述I/CD流水线系统提升软件开发速度的方法;用户提交代码,服务器接收webhook请求,解析请求获取流水线的配置信息,触发流水线的执行;服务器查询数据库,获取用户配置的流水线模板,自动生成Kubernetes job对象;以Kubernetesjob对象作为参数通过调用kubernetes‑client api在Kubernetes创建job;调度模块将job调度至node节点,执行job;job执行成功后调用kubernetes‑client api创建pod部署运行项目。本发明实现了自动化的代码获取、代码编译、镜像构建,全自动部署运行项目等技术;实现了用户只需配置流水线模板无需编写复杂的执行脚本即可使用流水线,操作简单快捷。
Description
技术领域
本发明涉及软件管理技术领域,尤其涉及基于Kubernetes及docker的CI/CD流水线系统。
背景技术
软件开发周期中需要一些可以帮助开发者提升速度的自动化工具,其中工具的最重要的目的是促进软件项目的持续集成与交付。通过CI/CD持续集成系统工具,开发团队可以保持软件更新并将其迅速的投入实践中。
CI/CD是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。CI/CD的核心概念是持续集成、持续交付和持续部署。作为一个面向开发和运营团队的解决方案,CI/CD主要针对在集成新代码时所引发的问题(亦称:“集成地狱”)。具体而言,CI/CD可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试阶段,到交付和部署)。这些关联的事务通常被统称为“CI/CD管道”,由开发和运维团队以敏捷方式协同支持。
CI/CD中的“CI”指的是持续集成(Continuous Integration),它属于开发人员的自动化流程。成功的CI意味着应用代码的新更改会定期构建、测试并合并到共享存储库中。该解决方案可以解决在一次开发中有太多应用分支,从而导致相互冲突的问题。
CI/CD中的“CD”指的是持续交付和/或持续部署(Continuous Delivery),这些相关概念有时会交叉使用。两者都事关管道后续阶段的自动化,但它们有时也会单独使用,用于说明自动化程度。
目前主流CI/CD流水线系统工具是Jenkins。Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
目前许多CI/CD流水线技术都基于Jenkins,而在使用Jenkins时的维护管理比较麻烦,比如Jenkins随着用的时间越来越久会沉淀出很多临时文件,它占的空间会越来越大,需要定期做一些清理,而且清理过程中无法直接一键清空,同时Jenkins的使用过程中时需要用户编写执行脚本,技术壁垒较高,操作较为繁琐,无法很好的推广。
发明内容
为解决上述技术问题,本发明提供了一种基于Kubernetes及docker的CI/CD流水线系统。
本发明所提供的基于Kubernetes及docker的CI/CD流水线系统,包括代码提交模块、触发流水线模块、数据库、服务器、调度模块,其中,通过代码提交模块将代码提交至gitlab/github触发webhook工作,服务器接收所述webhook的请求,触发服务器中流水线的执行;
服务器查询数据库,获取数据库中的用户配置的流水线模板;
服务器的job对象生成模块根据所述用户配置的流水线模板生成Kubernetes job对象,每一个Kubernetes job对象包括一个或更多个container,每一个流水线的步骤对应一个container,并在对应的container中执行包括代码获取、代码编译、镜像构建在内的动作;服务器以Kubernetes job对象作为参数,调用kubernetes-client api在Kubernetes创建job;
调度模块将job调度至node节点,执行job,job按照顺序依次运行各个container;
job执行成功后,服务器调用kubernetes-client api创建pod部署运行项目。
本发明还提供了一种基于Kubernetes及docker的CI/CD流水线提升软件开发速度的方法,包括
用户提交代码至gitlab/github,服务器接收gitlab/github的webhook请求,解析请求获取流水线的配置信息,触发流水线的执行;
服务器查询数据库,获取用户配置的流水线模板,自动生成Kubernetes job对象;所述的Kubernetes job对象,包含多个(即≥2个)container,一个流水线的步骤对应一个container,在container中执行包括代码获取、代码编译、镜像构建在内的动作;
以Kubernetesjob对象作为参数通过调用kubernetes-client api在Kubernetes创建job;
服务器将job调度至node节点,执行job,job按照顺序依次运行各个container;job执行成功后调用kubernetes-client api创建pod部署运行项目。
在一种优选实施例中,流水线模板包括代码获取模板、代码编译模板、镜像构建模板。
更优选实施例中,流水线模板中进行配置参数,供执行流水线时获取。优选地,流水线模板中进行配置参数,获取客户端的docker镜像过程中,获取所配置的参数。
在一种优选实施例中,所述的Kubernetes job对象的多个container中,包括跟踪监听job中的container,以获取container的执行结果,实时读取container执行过程中产生的日志,处理container执行过程中的异常。
在一种优选实施例中,将流水线中一些常用的步骤的工作内容分解,将其中可通用的部分抽取出来封装到docker镜像及执行脚本中,在执行流水线时获取为所述常用步骤配置的参数,即可利用docker镜像及执行脚本完成步骤的操作。
在一种优选实施例中,流水线中所述一些常用的步骤包括、但不限于代码获取,代码编译,镜像构建。
在一种优选实施例中,所述可通用的部分包括、不限于使用的操作系统、使用的软件、执行的命令。
在一种优选实施例中,执行job的步骤包括:
获取客户端的docker镜像;
启动第一container,第一container执行启动命令、执行脚本,客户端获取代码;获取编译工具的docker镜像;
启动第二container,第二container执行启动命令、执行脚本,编译工具执行编译代码;
获取镜像构建的docker镜像;
启动第三container,第三container执行启动命令、执行脚本,客户端构建镜像。
与现有技术相比,本发明的有益技术效果为:
1、本技术实现了自动化的代码获取、代码编译、镜像构建,全自动部署运行项目等技术。
2、本技术实现了用户只需配置流水线模板无需编写复杂的执行脚本即可使用流水线,操作简单快捷。
3、本技术在利用docker容器完成流水线的工作,在执行流水线的过程中产生的临时文件会随着容器的销毁而自动销毁(docker原生功能),无需人工清理。
4、本技术使用原生的Kubernetes及docker实现CI/CD流水线功能,天然适合云容器环境。
5.本技术利用kubernetes job分发能力(kubernetes原生功能),可将任务分发到不同的机器上并行执行,解决传统单节点瓶颈。
附图说明
图1是本发明的一个具体案例的CI/CD流水线工作原理框图。
图2是本发明的一个具体案例的流水线模板示意图。
图3是本发明的一个具体案例的流水线模板设置参数示意图。
图4是本发明的一个具体案例的执行Job工作原理示意图。
具体实施方式
一种基于Kubernetes及docker的CI/CD流水线系统、以及采用所述I/CD流水线系统提升软件开发速度的方法。
参照图1,申请基于Kubernetes及docker的CI/CD流水线系统,包括代码提交模块、触发流水线模块、数据库、服务器、调度模块。其工作方法,或者提升软件开发速度的方法如下:
步骤1、用户提交代码至gitlab/github触发webhook;
步骤2、服务器接收webhook请求,触发流水线执行;
步骤3、查询数据库,获取用户配置的流水线模板;
步骤4、根据用户配置的流水线模板生成Kubernetes job对象,Kubernetes job对象包含多个container,一个流水线的步骤对应一个container,在container中执行代码获取、代码编译、镜像构建等动作;
步骤5、以job对象作为参数通过调用kubernetes-client api在Kubernetes创建job;
步骤6、Kubernetes master调度job至node节点,执行job;
步骤7、job按顺序运行container1、container2、.....containerN;
步骤8、job执行成功,调用kubernetes-client api创建pod部署运行项目。
本申请可以将流水线中一些常用的步骤的工作内容分解,将其中可通用的部分抽取出来封装到docker镜像及执行脚本中,在执行流水线时获取为所述常用步骤配置的参数,即可利用docker镜像及执行脚本完成步骤的操作,流水线中所述一些常用的步骤包括、但不限于代码获取,代码编译,镜像构建,所述可通用的部分包括、不限于使用的操作系统、使用的软件、执行的命令。
参照图2,本申请流水线模板提供了代码获取模板、代码编译模板、镜像构建模板等标准模板,模板中可以进行配置参数,定义标准参数后,可供执行流水线时获取。例如,代码获取模板的参数包括git项目地址、git项目分发等,代码编译模板的参数包括编译环境、编译包路径等,镜像构建模板参数包括基础镜像仓库、镜像版本号等。
如图3所示,用户可以通过浏览器进入本申请流水线模板配置页面,选择要编辑的模板,如代码获取模板、代码编译模板、镜像构建模板等,之后根据实际需求将参数填入模板并保存到数据库即可。例如,代码获取模板中,安装git客户端的镜像的情况下,git项目路径设置为git@gitlab.xxx:xxx/xxx.git,git项目分发参数设置为master等;代码编译模板编译环境参数设置为java,编译包路径参数设置为target/project.far等;镜像构建模板中,安装了docker客户端的镜像的情况下,基础镜像仓库参数设置为dockerhab.baofu.com、镜像版本号参数设置为V1.0等,设置参数后的模板保存到数据库中。通过这种方式,本申请将流水线中一些常用的步骤如代码获取,代码编译,镜像构建的工作内容分解,将其中可通用的部分比如使用的操作系统、使用的软件、执行的命令抽取出来封装到docker镜像及执行脚本中。
触发流水线执行后,服务器查询数据库,获取保存的代码获取模板、代码编译模板、镜像构建模板等,即可构建生成Kubernetes job对象;执行流水线时,获取各个模板中的参数,即可利用docker镜像及执行脚本完成复杂的操作。
本申请中,所述的Kubernetes job对象的多个container中,还可以包括跟踪监听job中的container,以获取container的执行结果,实时读取container执行过程中产生的日志,处理container执行过程中的异常。
参照图4,步骤7包括:
获取git客户端的docker镜像;
启动第一container,第一container执行启动命令、执行脚本,git客户端获取代码;
获取编译工具的docker镜像;
启动第二container,第二container执行启动命令、执行脚本,编译工具执行编译代码;
获取镜像构建的docker客户端的镜像;
启动第三container,第三container执行启动命令、执行脚本,docker客户端构建镜像。
以上对本发明的具体实施例进行了详细描述,但其只是作为范例,本发明并不限制于以上描述的具体实施例。对于本领域技术人员而言,任何对本发明进行的等同修改和替代也都在本发明的范畴之中。因此,在不脱离本发明的精神和范围下所作的均等变换和修改,都应涵盖在本发明的范围内。
Claims (7)
1.一种基于Kubernetes及docker的CI/CD流水线系统,其特征在于,包括代码提交模块、触发流水线模块、数据库、服务器、调度模块,其中,
通过代码提交模块将代码提交至gitlab/github触发webhook工作,服务器接收所述webhook的请求,触发服务器中流水线的执行;
服务器查询数据库,获取数据库中的用户配置的流水线模板,流水线模板包括代码获取模板、代码编译模板、镜像构建模板,流水线模板中进行配置参数,供执行流水线时获取;其中,系统将流水线中一些常用的步骤的工作内容分解,将其中可通用的部分抽取出来封装到docker镜像及执行脚本中,在执行流水线时获取为常用步骤配置的参数,即可利用docker镜像及执行脚本完成步骤的操作;
服务器的job对象生成模块根据所述用户配置的流水线模板生成Kubernetes job对象,每一个Kubernetes job对象包括一个或更多个container,每一个流水线的步骤对应一个container,并在对应的container中执行包括代码获取、代码编译、镜像构建在内的动作;服务器以Kubernetes job对象作为参数,调用kubernetes-client api在Kubernetes创建job;
调度模块将job调度至node节点,执行job,job按照顺序依次运行各个container;
job执行成功后,服务器调用kubernetes-client api创建pod部署运行项目。
2.根据权利要求1所述的CI/CD流水线系统,其特征在于,流水线中所述一些常用的步骤包括、但不限于代码获取,代码编译,镜像构建。
3.根据权利要求1所述的CI/CD流水线系统,其特征在于,所述可通用的部分包括、不限于使用的操作系统、使用的软件、执行的命令。
4.根据权利要求1所述的CI/CD流水线系统,其特征在于,所述的Kubernetes job对象的多个container中,包括跟踪监听job中的container,以获取container的执行结果,实时读取container执行过程中产生的日志,处理container执行过程中的异常。
5.基于Kubernetes及docker的CI/CD流水线提升软件开发速度的方法,其特征在于,包括:
用户提交代码至gitlab/github,服务器接收gitlab/github的webhook请求,解析请求获取流水线的配置信息,触发流水线的执行;
服务器查询数据库,获取用户配置的流水线模板,自动生成Kubernetes job对象;其中,流水线模板包括代码获取模板、代码编译模板、镜像构建模板,流水线模板中进行配置参数,供执行流水线时获取;所述的Kubernetes job对象,包括一个或更多个container,一个流水线的步骤对应一个container,在container中执行包括代码获取、代码编译、镜像构建在内的动作;
以Kubernetesjob对象作为参数通过调用kubernetes-client api在Kubernetes创建job;
服务器将job调度至node节点,执行job,job按照顺序依次运行各个container;job执行成功后调用kubernetes-client api创建pod部署运行项目;
其中,用户配置的流水线模板,是将流水线中一些常用的步骤的工作内容分解,将其中可通用的部分抽取出来封装到docker镜像及执行脚本中,在执行流水线时获取为常用步骤配置的参数,即可利用docker镜像及执行脚本完成步骤的操作。
6.根据权利要求5所述的提升软件开发速度的方法,其特征在于,所述的Kubernetesjob对象的多个container中,包括跟踪监听job中的container,以获取container的执行结果,实时读取container执行过程中产生的日志,处理container执行过程中的异常。
7.根据权利要求5所述的提升软件开发速度的方法,其特征在于,在container中执行包括代码获取、代码编译、镜像构建在内的动作的步骤包括:
获取客户端的docker镜像;
启动第一container,第一container执行启动命令、执行脚本,客户端获取代码;获取编译工具的docker镜像;
启动第二container,第二container执行启动命令、执行脚本,编译工具执行编译代码;
获取镜像构建的dockeer镜像;
启动第三container,第三container执行启动命令、执行脚本,客户端构建镜像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011526167.3A CN112711411B (zh) | 2020-12-22 | 2020-12-22 | 一种基于Kubernetes及docker的CI/CD流水线系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011526167.3A CN112711411B (zh) | 2020-12-22 | 2020-12-22 | 一种基于Kubernetes及docker的CI/CD流水线系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112711411A CN112711411A (zh) | 2021-04-27 |
CN112711411B true CN112711411B (zh) | 2024-02-23 |
Family
ID=75545037
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011526167.3A Active CN112711411B (zh) | 2020-12-22 | 2020-12-22 | 一种基于Kubernetes及docker的CI/CD流水线系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112711411B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113434554A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 持续集成流水线的构建方法及装置 |
CN113486282A (zh) * | 2021-07-23 | 2021-10-08 | 北京乐学帮网络技术有限公司 | 一种页面生成方法及装置 |
CN114461182A (zh) * | 2022-02-09 | 2022-05-10 | 江苏安超云软件有限公司 | 流水线构建的方法、装置、电子设备及计算机可读存储介质 |
CN114860406B (zh) * | 2022-05-18 | 2024-02-20 | 安元科技股份有限公司 | 一种基于Docker的分布式编译打包系统及方法 |
CN115113909A (zh) * | 2022-06-29 | 2022-09-27 | 北京永信至诚科技股份有限公司 | 一种项目自动化运维方法、系统、电子设备及存储介质 |
CN116521134A (zh) * | 2023-03-13 | 2023-08-01 | 广州嘉为科技有限公司 | 在ci流水线执行过程中修改其参数的方法、装置及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105630488A (zh) * | 2015-12-18 | 2016-06-01 | 上海爱数信息技术股份有限公司 | 一种基于docker容器技术的持续集成实现方法 |
CN109032645A (zh) * | 2018-07-28 | 2018-12-18 | 烽火云科技有限公司 | 基于Kubernetes的持续集成与部署的方法和系统 |
CN109814879A (zh) * | 2019-01-16 | 2019-05-28 | 福建省天奕网络科技有限公司 | 自动化ci/cd项目部署方法、存储介质 |
CN110083369A (zh) * | 2019-04-25 | 2019-08-02 | 中电科嘉兴新型智慧城市科技发展有限公司 | 一种基于容器方案的持续集成和持续交付方法 |
CN110647332A (zh) * | 2019-09-30 | 2020-01-03 | 北京百度网讯科技有限公司 | 基于容器云的软件部署方法和装置 |
CN111459539A (zh) * | 2020-04-07 | 2020-07-28 | 中国建设银行股份有限公司 | 基于镜像分层的持续集成流水线运行方法及装置 |
CN111475260A (zh) * | 2020-04-10 | 2020-07-31 | 杭州趣维科技有限公司 | 一种基于jenkins和kubernetes平台的可弹性CICD方法 |
CN112068845A (zh) * | 2020-08-05 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 一种适配多架构的容器化cicd服务部署方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180088926A1 (en) * | 2016-09-27 | 2018-03-29 | Ca, Inc. | Container image management using layer deltas |
-
2020
- 2020-12-22 CN CN202011526167.3A patent/CN112711411B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105630488A (zh) * | 2015-12-18 | 2016-06-01 | 上海爱数信息技术股份有限公司 | 一种基于docker容器技术的持续集成实现方法 |
CN109032645A (zh) * | 2018-07-28 | 2018-12-18 | 烽火云科技有限公司 | 基于Kubernetes的持续集成与部署的方法和系统 |
CN109814879A (zh) * | 2019-01-16 | 2019-05-28 | 福建省天奕网络科技有限公司 | 自动化ci/cd项目部署方法、存储介质 |
CN110083369A (zh) * | 2019-04-25 | 2019-08-02 | 中电科嘉兴新型智慧城市科技发展有限公司 | 一种基于容器方案的持续集成和持续交付方法 |
CN110647332A (zh) * | 2019-09-30 | 2020-01-03 | 北京百度网讯科技有限公司 | 基于容器云的软件部署方法和装置 |
CN111459539A (zh) * | 2020-04-07 | 2020-07-28 | 中国建设银行股份有限公司 | 基于镜像分层的持续集成流水线运行方法及装置 |
CN111475260A (zh) * | 2020-04-10 | 2020-07-31 | 杭州趣维科技有限公司 | 一种基于jenkins和kubernetes平台的可弹性CICD方法 |
CN112068845A (zh) * | 2020-08-05 | 2020-12-11 | 苏州浪潮智能科技有限公司 | 一种适配多架构的容器化cicd服务部署方法及装置 |
Non-Patent Citations (2)
Title |
---|
Implementation of a Continuous Integration and Deployment Pipeline for Containerized Applications in Amazon Web Services Using Jenkins, Ansible and Kubernetes;Artur Cepuc等;《2020 19th RoEduNet Conference: Networking in Education and Research (RoEduNet)》;第1-6页 * |
基于Kubernetes的CI/CD平台;陈博等;《计算机系统应用》(第12期);第268-271页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112711411A (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112711411B (zh) | 一种基于Kubernetes及docker的CI/CD流水线系统 | |
CN108897547B (zh) | 一种软件自动化部署方法及装置 | |
EP2990942B1 (en) | Service extraction and application composition | |
CN106708740B (zh) | 脚本测试方法及装置 | |
CN112882700A (zh) | iOS应用程序构建方法及装置、电子设备及存储介质 | |
CN110795078A (zh) | 基于ios系统下的app工程运作系统的架构方法 | |
CN103530137A (zh) | 一种Java web应用部署方法及装置 | |
CN111324522A (zh) | 一种自动化测试系统及方法 | |
CN113220431B (zh) | 跨云的分布式数据任务调度方法、设备及存储介质 | |
CN111078265B (zh) | 一种基于jenkins的web项目更新补丁生成方法 | |
CN113064630B (zh) | 移动端app自动打包方法、系统、电子设备及存储介质 | |
CN114297056A (zh) | 一种自动化测试方法及系统 | |
CN112286829A (zh) | 测试脚本生成方法及装置 | |
CN110795139A (zh) | 客户端批量打包方法、装置、计算机设备和存储介质 | |
CN113254054A (zh) | 一种智能合约一站式开发系统及方法 | |
CN111651352A (zh) | 一种仓库代码的合并方法及装置 | |
CN104252413A (zh) | 一种自动化脚本生成方法、装置及系统 | |
CN111190584A (zh) | Ehis-db系统版本发布方法、装置、计算机设备和存储介质 | |
CN114265595B (zh) | 一种基于智能合约的云原生应用开发与部署系统和方法 | |
CN103678485A (zh) | 虚拟试验流程节点驱动与活动封装系统 | |
JP2008293186A (ja) | 鉄鋼プラント制御プログラムの自動生成方法およびその装置 | |
CN115185489B (zh) | 一种时序数据算法组态系统和方法 | |
Chen | DevOps practices in digital library development | |
CN116402325A (zh) | 业务流程自动化处理方法及装置 | |
CN115658133A (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 |