CN106909386A - 一种云平台代码持续集成方法及系统 - Google Patents
一种云平台代码持续集成方法及系统 Download PDFInfo
- Publication number
- CN106909386A CN106909386A CN201710108311.3A CN201710108311A CN106909386A CN 106909386 A CN106909386 A CN 106909386A CN 201710108311 A CN201710108311 A CN 201710108311A CN 106909386 A CN106909386 A CN 106909386A
- Authority
- CN
- China
- Prior art keywords
- pod
- code
- cloud platform
- kubernetes
- jenkins
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or 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)
- Testing Or Calibration Of Command Recording Devices (AREA)
Abstract
本申请公开了一种云平台代码持续集成方法及系统,该方法包括:在Kubernetes的Pod中部署Jenkins环境;将Git工具安装至Jenkins环境,以在Jenkins环境中利用Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。本申请通过将Kubernetes、Jenkins以及Git进行结合,使得能够对云平台系统代码进行高效的持续集成,由此大幅提升了云平台代码集成过程中的集成效率并降低了人工成本。
Description
技术领域
本发明涉及云平台技术领域,特别涉及一种云平台代码持续集成方法及系统。
背景技术
当前,随着信息技术的发展,云计算逐步成为了业界的发展热点,应用范围也得到不断地扩大,云平台的使用量和用户活跃度也与日俱增。与此同时,云平台系统中代码量越来越多,呈指数性增长,在这种情况下,以往利用人工方式来对云平台系统代码进行集成的做法,已经难以满足日益多样化高标准的需求,不仅集成效率低,并且需要消耗大量的人工运维成本。
综上所述可以看出,如何提升云平台代码集成过程中的集成效率并降低人工成本是目前亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种云平台代码持续集成方法及系统,提升了云平台代码集成过程中的集成效率并降低了人工成本。其具体方案如下:
一种云平台代码持续集成方法,包括:
在Kubernetes的Pod中部署Jenkins环境;
将Git工具安装至所述Jenkins环境,以在所述Jenkins环境中利用所述Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;
利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
可选的,所述对Pod进行动态维护管理,包括:
对Pod进行动态扩容处理或动态缩容处理。
可选的,所述云平台代码持续集成方法,还包括:
利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。
可选的,所述云平台代码持续集成方法,还包括:
利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测;
当检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
本发明还公开了一种云平台代码持续集成系统,包括:
环境部署模块,用于在Kubernetes的Pod中部署Jenkins环境;
工具安装模块,用于将Git工具安装至所述Jenkins环境,以在所述Jenkins环境中利用所述Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;
动态维护模块,用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
可选的,所述动态维护模块,具体用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态扩容处理或动态缩容处理。
可选的,所述云平台代码持续集成系统,还包括:
健康维护模块,用于利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。
可选的,所述云平台代码持续集成系统,还包括:
质量检测模块,用于利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测;
信息生成模块,用于当所述质量检测模块检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
本发明中,云平台代码持续集成方法,包括:在Kubernetes的Pod中部署Jenkins环境;将Git工具安装至Jenkins环境,以在Jenkins环境中利用Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
可见,本发明通过将Kubernetes、Jenkins以及Git进行结合,使得能够对云平台系统代码进行高效的持续集成,由此大幅提升了云平台代码集成过程中的集成效率并降低了人工成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的一种云平台代码持续集成方法流程图;
图2为本发明实施例公开的一种云平台代码持续集成系统结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种云平台代码持续集成方法,参见图1所示,该方法包括:
步骤S11:在Kubernetes的Pod中部署Jenkins环境。
本实施例中,Kubernetes是一种开源的容器集群管理系统,主要包括Service、ReplicationController和Pod等组件。Jenkins是一个开源软件项目,能够用于提供一个开放易用的软件平台。
步骤S12:将Git工具安装至Jenkins环境,以在Jenkins环境中利用Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中。
本实施例中,Git是一种分布式版本控制系统。另外,本实施例中代码的持续集成周期可以在上述Jenkins环境中进行设定,设定完毕后,本实施例将会根据设定好的代码持续集成周期自动进行代码持续集成。
步骤S13:利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
具体的,上述对Pod进行动态维护管理的过程,可以包括:对Pod进行动态扩容处理或动态缩容处理。也即,根据当前Pod已获取到的代码量的变化情况,可以相应地对Pod进行动态扩容处理或动态缩容处理。
进一步的,本实施例中的云平台代码持续集成方法,还可以包括:
利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。例如,当发现某个Pod的健康程度较差,则可以创建一个新的Pod来替换这个健康程度较差的Pod。
进一步的,本实施例中的云平台代码持续集成方法,还可以包括:
利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测,当检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
可以理解的是,本实施例具体可以将上述提示信息发送至相应的代码开发人员的终端上。
可见,本发明实施例通过将Kubernetes、Jenkins以及Git进行结合,使得能够对云平台系统代码进行高效的持续集成,由此大幅提升了云平台代码集成过程中的集成效率并降低了人工成本。
相应的,本发明实施例还公开了一种云平台代码持续集成系统,参见图2所示,该系统包括:
环境部署模块11,用于在Kubernetes的Pod中部署Jenkins环境;
工具安装模块12,用于将Git工具安装至Jenkins环境,以在Jenkins环境中利用Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;
动态维护模块13,用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
其中,上述动态维护模块13,具体可以用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态扩容处理或动态缩容处理。
进一步的,本实施例中的云平台代码持续集成系统,还可以包括:
健康维护模块,用于利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。
进一步的,本实施例中的云平台代码持续集成系统,还可以包括质量检测模块和信息生成模块;其中,
质量检测模块,用于利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测;
信息生成模块,用于当质量检测模块检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
可见,本发明实施例通过将Kubernetes、Jenkins以及Git进行结合,使得能够对云平台系统代码进行高效的持续集成,由此大幅提升了云平台代码集成过程中的集成效率并降低了人工成本。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种云平台代码持续集成方法及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (8)
1.一种云平台代码持续集成方法,其特征在于,包括:
在Kubernetes的Pod中部署Jenkins环境;
将Git工具安装至所述Jenkins环境,以在所述Jenkins环境中利用所述Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;
利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
2.根据权利要求1所述的云平台代码持续集成方法,其特征在于,所述对Pod进行动态维护管理,包括:
对Pod进行动态扩容处理或动态缩容处理。
3.根据权利要求1所述的云平台代码持续集成方法,其特征在于,还包括:
利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。
4.根据权利要求1至3任一项所述的云平台代码持续集成方法,其特征在于,还包括:
利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测;
当检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
5.一种云平台代码持续集成系统,其特征在于,包括:
环境部署模块,用于在Kubernetes的Pod中部署Jenkins环境;
工具安装模块,用于将Git工具安装至所述Jenkins环境,以在所述Jenkins环境中利用所述Git工具中的代码下载脚本来持续获取云平台系统代码,并将获取到的云平台系统代码保存至Pod的容器中;
动态维护模块,用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态维护管理。
6.根据权利要求5所述的云平台代码持续集成系统,其特征在于,
所述动态维护模块,具体用于利用Kubernetes的ReplicationController,并结合当前Pod已获取到的代码量,对Pod进行动态扩容处理或动态缩容处理。
7.根据权利要求5所述的云平台代码持续集成系统,其特征在于,还包括:
健康维护模块,用于利用Kubernetes的ReplicationController,对Pod的健康程度进行检查,并根据Pod的健康程度对Pod展开相应的维护管理。
8.根据权利要求5至7任一项所述的云平台代码持续集成系统,其特征在于,还包括:
质量检测模块,用于利用代码检测工具,对Pod中保存的云平台系统代码进行质量检测;
信息生成模块,用于当所述质量检测模块检测出Pod中保存的云平台系统代码存在质量问题,则产生相应的提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710108311.3A CN106909386A (zh) | 2017-02-27 | 2017-02-27 | 一种云平台代码持续集成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710108311.3A CN106909386A (zh) | 2017-02-27 | 2017-02-27 | 一种云平台代码持续集成方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106909386A true CN106909386A (zh) | 2017-06-30 |
Family
ID=59208385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710108311.3A Pending CN106909386A (zh) | 2017-02-27 | 2017-02-27 | 一种云平台代码持续集成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106909386A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107656748A (zh) * | 2017-09-08 | 2018-02-02 | 北京京东尚科信息技术有限公司 | 应用发布的方法和装置 |
CN107729247A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 基于jenkins检查源程序代码错误的方法和装置 |
CN109656563A (zh) * | 2018-11-28 | 2019-04-19 | 北京旷视科技有限公司 | 代码审查方法、装置、系统和存储介质 |
US10402302B1 (en) | 2018-03-13 | 2019-09-03 | Red Hat Israel, Ltd. | Reproduction of testing scenarios in a continuous integration environment |
CN111262908A (zh) * | 2020-01-09 | 2020-06-09 | 中国工商银行股份有限公司 | 基于jenkins的任务构建方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468378A (zh) * | 2015-12-11 | 2016-04-06 | 上海爱数信息技术股份有限公司 | 一种软件持续集成配置管理方法和系统 |
CN105630488A (zh) * | 2015-12-18 | 2016-06-01 | 上海爱数信息技术股份有限公司 | 一种基于docker容器技术的持续集成实现方法 |
CN105739966A (zh) * | 2016-01-19 | 2016-07-06 | 浪潮软件集团有限公司 | 一种持续集成的方法及装置 |
CN105955749A (zh) * | 2016-05-10 | 2016-09-21 | 北京启明星辰信息安全技术有限公司 | 软件项目的持续集成方法和装置 |
-
2017
- 2017-02-27 CN CN201710108311.3A patent/CN106909386A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468378A (zh) * | 2015-12-11 | 2016-04-06 | 上海爱数信息技术股份有限公司 | 一种软件持续集成配置管理方法和系统 |
CN105630488A (zh) * | 2015-12-18 | 2016-06-01 | 上海爱数信息技术股份有限公司 | 一种基于docker容器技术的持续集成实现方法 |
CN105739966A (zh) * | 2016-01-19 | 2016-07-06 | 浪潮软件集团有限公司 | 一种持续集成的方法及装置 |
CN105955749A (zh) * | 2016-05-10 | 2016-09-21 | 北京启明星辰信息安全技术有限公司 | 软件项目的持续集成方法和装置 |
Non-Patent Citations (2)
Title |
---|
DOCKERINFO: ""Kubernetes基本架构和基本概念"", 《HTTP://WWW.DOCKERINFO.NET/757.HTML》 * |
散尽浮华: ""Kubernetes运维学习笔记"", 《HTTPS://WWW.CNBLOGS.COM/KEVINGRACE/P/5575666.HTML》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107656748A (zh) * | 2017-09-08 | 2018-02-02 | 北京京东尚科信息技术有限公司 | 应用发布的方法和装置 |
CN107729247A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 基于jenkins检查源程序代码错误的方法和装置 |
US10402302B1 (en) | 2018-03-13 | 2019-09-03 | Red Hat Israel, Ltd. | Reproduction of testing scenarios in a continuous integration environment |
US10877871B2 (en) | 2018-03-13 | 2020-12-29 | Red Hat Israel, Ltd. | Reproduction of testing scenarios in a continuous integration environment |
CN109656563A (zh) * | 2018-11-28 | 2019-04-19 | 北京旷视科技有限公司 | 代码审查方法、装置、系统和存储介质 |
CN111262908A (zh) * | 2020-01-09 | 2020-06-09 | 中国工商银行股份有限公司 | 基于jenkins的任务构建方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106909386A (zh) | 一种云平台代码持续集成方法及系统 | |
CN104407976B (zh) | 一种接口健壮性测试用例生成方法及装置 | |
CN106845849A (zh) | 一种业务流程管理方法及系统 | |
CN104572597A (zh) | 一种自动生成word分析报告方法和装置 | |
CN103019684A (zh) | 一种基于动态模板的配置业务页面的方法 | |
CN104035754A (zh) | 一种基于xml的自定义代码生成方法及生成器 | |
CN104461743A (zh) | 资源和配置的自动生成装置和方法 | |
CN105528418A (zh) | 一种设计文档生成方法及装置 | |
CN103927607A (zh) | 数据处理方法及装置 | |
CN101673358B (zh) | 基于权限组件对工作流组件中的权限管理的方法及装置 | |
CN105243167A (zh) | 一种数据处理方法及装置 | |
CN104461901A (zh) | 一种自动生成测试用例的方法及系统 | |
CN101673374A (zh) | 一种单据处理方法和装置 | |
Durret et al. | Link between brightest cluster galaxy properties and large scale extensions of 38 DAFT/FADA and CLASH clusters in the redshift range 0.2< z< 0.9 | |
CN102142108A (zh) | 适用于电力系统的物料与设备对应关系信息的处理方法 | |
CN104361040A (zh) | 一种定制查询的方法及装置 | |
CN108037929A (zh) | 一种消息处理方法及系统 | |
CN107103059A (zh) | 基于财务业务流程的流程图生成方法及装置 | |
CN106779582A (zh) | 一种tws流程配置方法及装置 | |
CN104598554A (zh) | 网页页面加载方法及装置 | |
CN106293740A (zh) | 一种应用于plc、dcs设备数据的报表开发方法 | |
CN103914304B (zh) | 一种基于sap平台的不同结构类型参数转换方法 | |
CN106157216A (zh) | 一种空间信息数据管理方法及系统 | |
CN101426220A (zh) | 一种基站割接的方法、装置及系统 | |
CN107545073A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170630 |