[发明专利]软件持续集成的方法、装置和系统无效
申请号: | 201010290480.1 | 申请日: | 2010-09-19 |
公开(公告)号: | CN101957778A | 公开(公告)日: | 2011-01-26 |
发明(设计)人: | 王佥;孙达 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F9/50;H04L29/06 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 何文彬 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 软件 持续 集成 方法 装置 系统 | ||
技术领域
本发明涉及持续集成技术领域,特别涉及一种软件持续集成的方法、装置和系统。
背景技术
CI(Continuous Integration,持续集成)是一种自动化的软件创建与测试过程,在软件开发项目中,CI系统将每个CI任务分解成多个CI子任务,如将对某软件的CI任务分解成获取最新代码、编译代码、打包、发布、安装、自动测试、质量检测和数据度量等CI子任务,通过不断的执行CI子任务,可尽早地发现软件缺陷,并对其进行修复。由此可见,不同的CI系统的优劣可对于软件的开发效率和投入成本造成不同的影响。
现有的CI系统如图1所示,主要由CI主控和CI代理组成,其对软件进行CI的主要步骤为:首先,用户向某一CI主控下发CI任务;然后,该CI主控将该CI任务分解成多个CI子任务,并将该CI子任务下发至相应的CI代理执行,其中每个CI代理负责执行的CI任务类型是固定的;最后,由该相应的CI代理执行该CI子任务,并将执行结果返回CI主控。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
现有的持续集成系统中,由于CI代理负责执行的CI任务类型是固定的,CI主控只能下发固定的CI任务至相应的CI代理,没有选择的可能性,从而CI代理资源的共享程度低,资源利用率低下。
发明内容
本发明实施例提供了一种软件持续集成的方法,以实现CI代理间的负载分担,提高CI代理的利用率。
一方面,本发明实施例提供一种软件持续集成的方法,包括:
接收并管理CI主控发送的CI子任务;
根据当前管理的CI代理资源池中至少两个CI代理的在线通信状态、所述至少两个CI代理的计算资源闲置状态,确定执行当前管理的至少一个CI子任务中的当前可执行子任务的目的CI代理,并将所述当前可执行子任务发送至所述目的CI代理,使所述目的CI代理执行所述可执行子任务,所述至少两个CI代理为通用计算单元。
本发明实施例还提供了一种软件持续集成的装置,所述装置包括:
可执行子任务接收模块,用于接收并管理CI主控发送的CI子任务;
目的CI代理确定模块,用于根据当前管理的CI代理资源池中至少两个CI代理的在线通信状态、所述至少两个CI代理的计算资源闲置状态,确定执行当前管理的至少一个CI子任务中的当前可执行子任务的目的CI代理,并将所述当前可执行子任务发送至所述目的CI代理,使所述目的CI代理执行所述可执行子任务,所述至少两个CI代理为通用计算单元。
本发明实施例还提供了一种软件持续集成的系统,包括:至少两个CI主控、CI管理机、至少两个CI代理,所述至少两个CI代理为通用计算单元;
所述CI主控用于接收用户下发的CI任务,将所述CI任务分解成至少两项CI子任务,向所述CI管理机发送当前可执行的CI子任务;
所述CI管理机用于接收并管理所述CI主控发送的CI子任务;根据当前管理的CI代理资源池中至少两个CI代理的在线通信状态、所述至少两个CI代理的计算资源闲置状态,确定执行自身管理的至少一个CI子任务中的当前可执行子任务的目的CI代理,并将所述当前可执行子任务发送至所述目的CI代理;
所述CI代理为所述CI管理机确定的目的CI代理时,用于接收并执行所述CI管理机发送的当前可执行子任务。
可见,本实施例通过根据当前管理的CI代理资源池中至少两个CI代理的在线通信状态、所述至少两个CI代理的计算资源闲置状态,确定执行所述可执行子任务的目的CI代理,实现CI代理间的负载分担,提高CI代理的利用率以及持续集成的效率。
附图说明
图1是现有技术中CI系统的结构示意图;
图2是本发明实施例1中提供的软件持续集成的方法流程图;
图3是本发明实施例2中提供的软件持续集成的方法流程图;
图4是本发明实施例3中提供的软件持续集成的方法流程图;
图5是本发明实施例4中提供的第一种CI管理机的结构示意流程图;
图6是本发明实施例4中提供的第二种CI管理机的结构示意流程图;
图7是本发明实施例4中提供的第三种CI管理机的结构示意流程图;
图8是本发明实施例5中提供的软件持续集成系统的结构示意流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
如图2所示,本发明实施例提供了一种软件持续集成的方法,该方法包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010290480.1/2.html,转载请声明来源钻瓜专利网。