编译任务的执行方法和装置、存储介质及电子装置制造方法及图纸

技术编号:22640892 阅读:39 留言:0更新日期:2019-11-26 15:58
本发明专利技术公开了一种编译任务的执行方法和装置、存储介质及电子装置。其中,该方法包括:获取一组待编译任务;确定待编译任务所处的编译环境以及待编译任务的并发数量;通过服务质量分类标识QCI分布式编译服务器获取与编译环境以及并发数量对应的一组应用容器引擎docker容器的一组镜像文件;将待编译任务发送到分布式独立工作的一组应用容器引擎docker容器,其中,一组待编译任务被划分到一组docker容器中的各个docker容器中;获取一组docker容器分布式执行待编译任务中对应的待编译任务所得到的编译结果。本发明专利技术解决了相关技术中对任务的编译耗时的技术问题。

Compiling task execution method and device, storage medium and electronic device

The invention discloses a compilation task execution method and device, a storage medium and an electronic device. Among them, the method includes: obtaining a group of tasks to be compiled; determining the compilation environment of the tasks to be compiled and the concurrent number of the tasks to be compiled; obtaining a group of image files of a group of application container engine docker containers corresponding to the compilation environment and the concurrent number through the service quality classification identification QCI distributed compilation server; sending the tasks to be compiled to the distributed independent workers A set of application container engine docker containers, in which a set of tasks to be compiled is divided into a set of docker containers in each docker container; the compilation results obtained by a set of docker containers distributed executing the corresponding tasks to be compiled in the tasks to be compiled are obtained. The invention solves the technical problem of time-consuming task compilation in related technologies.

【技术实现步骤摘要】
编译任务的执行方法和装置、存储介质及电子装置
本专利技术涉及计算机领域,具体而言,涉及一种编译任务的执行方法和装置、存储介质及电子装置。
技术介绍
持续集成(ContinuousIntegration,简称为CI)和持续交付(Continuousdelivery,简称为CD)的是敏捷开发的基础。在持续集成和持续交付过程中管线pipeline流水线的各个环节的耗时非常重要,特别是编译耗时。有些项目编译时间很长,几十分钟甚至几个小时,严重影响了敏捷开发的效率。针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术实施例提供了一种编译任务的执行方法和装置、存储介质及电子装置,以至少解决相关技术中对任务的编译耗时的技术问题。根据本专利技术实施例的一个方面,提供了一种编译任务的执行方法,包括:获取一组待编译任务;将上述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器,其中,上述待编译任务被划分到上述一组docker容器中的各个docker容器中;获取上述一组docker容器分布式执行上述本文档来自技高网...

【技术保护点】
1.一种编译任务的执行方法,其特征在于,包括:/n获取一组待编译任务;/n确定所述待编译任务所处的编译环境以及所述待编译任务的并发数量;/n通过服务质量分类标识QCI分布式编译服务器获取与所述编译环境以及所述并发数量对应的一组应用容器引擎docker容器的一组镜像文件,其中,所述一组镜像文件与所述一组docker容器中的docker容器一一对应;/n将所述待编译任务发送到分布式独立工作的所述一组docker容器,其中,所述待编译任务被划分到所述一组docker容器中的各个docker容器中;/n获取所述一组docker容器分布式执行所述待编译任务中对应的待编译任务所得到的编译结果。/n

【技术特征摘要】
1.一种编译任务的执行方法,其特征在于,包括:
获取一组待编译任务;
确定所述待编译任务所处的编译环境以及所述待编译任务的并发数量;
通过服务质量分类标识QCI分布式编译服务器获取与所述编译环境以及所述并发数量对应的一组应用容器引擎docker容器的一组镜像文件,其中,所述一组镜像文件与所述一组docker容器中的docker容器一一对应;
将所述待编译任务发送到分布式独立工作的所述一组docker容器,其中,所述待编译任务被划分到所述一组docker容器中的各个docker容器中;
获取所述一组docker容器分布式执行所述待编译任务中对应的待编译任务所得到的编译结果。


2.根据权利要求1所述的方法,其特征在于,在所述通过服务质量分类标识QCI分布式编译服务器获取与所述编译环境以及所述并发数量对应的所述一组docker容器的一组镜像文件之后,所述方法还包括:
使用所述一组镜像文件对处于空闲状态的所述一组docker容器进行实例化操作,以启动所述一组docker容器。


3.根据权利要求1所述的方法,其特征在于,
在所述将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器之前,所述方法还包括:获取处于启动状态的分布式编译进程中的白名单参数,其中,所述白名单参数用于为主机配置对应的IP地址,所述IP地址用于允许所述主机将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器;
所述将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器包括:在所述主机上基于所述IP地址将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器。


4.根据权利要求1所述的方法,其特征在于,在将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器之后,所述方法还包括:
通过QCI分布式编译服务器返回分配至所述一组docker容器的IP地址;
将所述一组docker容器的IP地址设置在分布式主机的环境变量distcc_hosts中,以确定所述distcc_hosts的环境变量值,其中,所述distcc_hosts的环境变量值用于关联所述分布式主机和所述一组docker容器的IP地址。


5.根据权利要求1所述的方法,其特征在于,在所述将所述待编译任务发送到分布式独立工作的一组应用容器引擎docker容器之前,所述方法还包括:
确定所述docker容器集合所使用的编译工具;
利用所述编译工具确定出所述一组docker容器的一组应用容器引擎文件,其中,所述一组应用容器引擎文件与所述一组docker容器中的docker容器一一对应,每个所述应用容器引擎文件用于触发所述一组docker容器中对应的docker容器执行所述待编译任务中对应的待编译任务;
确定出所述一组docker容器的一组脚本文件,其中,所述一组脚本文件与所述一组docker容器中的docker容器一一对应,每个所述脚本文件用于运行所述一组docker容器中对应的docker容器。

【专利技术属性】
技术研发人员:蒋艳军潘金赤
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1