[发明专利]基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法在审
申请号: | 201911314517.7 | 申请日: | 2019-12-19 |
公开(公告)号: | CN111143029A | 公开(公告)日: | 2020-05-12 |
发明(设计)人: | 王锟;王建华 | 申请(专利权)人: | 浪潮软件股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 gitlab ci 调集 实现 虚拟机 一致 自动 伸缩 持续 构建 环境 方法 | ||
1.基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:该方法基于Gitlab代码版本管理应用程序,利用其提供的回调集成功能,结合Keeper中间件服务,联动触发初始化、重置虚拟机运行时动作,实现虚拟机一致化、可伸缩的持续构建环境。
2.根据权利要求1所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:该方法具体包括以下步骤:
S1、通过Keeper API注册用户授权访问令牌、仓库项目及注册令牌;
S2、在Gitlab回调集成服务注册Keeper API服务地址,选中管道事件内容类别;
S3、在Keeper中间件服务配置库中提供可用的IP资源;
S4、用户提交代码并提供.gitlab-ci.yml文件,触发管道方式持续构建流程;
S5、Keeper中间件服务监听回调集成获得持续构建信息,结合配置库注册信息生成构建虚拟机模板文件;
S6、Gitlab-CI服务使用虚拟机运行时一致性环境执行.gitlab-ci.yml定义的持续集成过程;
S7、持续集成过程执行成功或失败时,管道方式回调集成事件发送相应的状态事件;
S8、当同一仓库项目正在执行持续集成任务时,又产生其他管道方式回调集成事件,Keeper中间件服务将新到任务放入等待队列排队,同时将新启动的持续集成任务暂时置为取消状态。
3.根据权利要求2所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:所述Gitlab提供回调集成外部服务的扩展能力,Gitlab-CI作为持续集成服务,提供基于管道方式的构建过程。
4.根据权利要求3所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:在回调集成中产生管道构建各阶段的事件内容,Keeper中间件服务注册监听管道构建的事件内容,获得构建信息,结合配置数据,通过调用Gitlab API和Vagrant命令行触发后续管理、调度虚拟机过程。
5.根据权利要求4所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:Keeper中间件服务提供API服务,负责调用Gitlab API及监听回调集成服务事件内容。
6.根据权利要求5所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:步骤S3中,在Keeper中间件服务配置库中提供可用的IP资源,为创建持续集成服务的虚拟机通过网络注册给Gitlab-CI服务调度使用。
7.根据权利要求6所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:步骤S5中,调用宿主机命令行接口创建虚拟机环境,虚拟机创建完成后,通过注册令牌注册给Gitlab-CI服务。
8.根据权利要求7所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:步骤S7中,Keeper中间件服务根据收到的事件信息,销毁对应的虚拟机运行时环境,实现资源伸缩回收。
9.根据权利要求8所述的基于Gitlab-CI回调集成实现虚拟机一致、自动伸缩的持续构建环境的方法,其特征在于:步骤S8中,通过轮询方式,检测当前任务执行状态,待当前任务执行完成时,从队列中取出队列任务,重新启动之前暂停状态的持续集成任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件股份有限公司,未经浪潮软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911314517.7/1.html,转载请声明来源钻瓜专利网。