[发明专利]自动编译的方法和系统在审
申请号: | 201610787301.2 | 申请日: | 2016-08-31 |
公开(公告)号: | CN106648812A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 李奎 | 申请(专利权)人: | 上海锐鸿通信技术有限公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京华智则铭知识产权代理有限公司11573 | 代理人: | 田建涛 |
地址: | 201712 上*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 自动 编译 方法 系统 | ||
技术领域
本发明涉及计算机领域,特别涉及一种自动编译的方法和系统。
背景技术
ODM(Original Designed Manufacture),是指为客户提供从产品研发到产品生产的全套服务。客户只需提出产品的功能、性能甚至只需提供相关的构思,ODM厂商将产品从设想变为现实。
拥有产品研发能力是ODM企业生存与发展的关键环节。国内的ODM企业大多是制造起家,在组织大规模生产方面有比较丰富的经验。相反,其研发管理的经验不是很足。
现有自动编译项目代码的实现方式有很多,最普遍的方式是通过脚本来实现自动编译,但其无法实现对项目和服务器的动态分配。由于每天有大量代码需要自动编译,需要大量服务器,最好能够每台服务器都参与编译,但是如果要求每台服务器都能够编译任意版本,那么就需在每台服务器都存储所有源码,这样会浪费很多服务器存储空间。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种自动编译的方法和系统。所述技术方案如下:
一方面,一种自动编译的方法,包括以下步骤:
设定编译时间;
到达编译时间后查询可编译版本;
查询到可编译版本后自动将编译任务分配给服务器,然后编译项目代码。
进一步的,设定编译时间的具体步骤为:
预定编译时间;
等待预定编译时间;
判断是否到达预定编译时间;
如判断为否,则继续等待直到到达预定编译时间;
如判断为是,则进行查询可编译版本步骤。
进一步的,查询可编译版本的具体步骤为:
连接数据库,查询当前时间是否有未编译的版本号,将未编译的版本号加入可编译版本列表;
根据数据库中查询返回的可编译列表是否为空,判断是否存在可编译版本;
若为空,表明没有可编译版本,则判断为否,返回等待预定编译时间步骤,重新等待下次预定编译时间;
若不为空,表明存在可编译版本,则判断为是,将可编译版本作为编译任务,进行项目代码编译步骤。
进一步的,进行项目代码编译的具体步骤为:
迭代可编译版本,同时查询所有编译服务器,以配置有编译任务版本库的编译服务器作为可用编译服务器;
根据各个可用编译服务器上配置的版本库名称和最大可编译的任务数量,对可用编译服务器进行分配;
发送编译任务到相应的可用编译服务器;
可用编译服务器分别独自编译项目代码。
进一步的,对可用编译服务器进行分配的具体方法为:(1)根据版本库匹配将每个编译任务分配到对应的可用编译服务器,然后每个可用编译服务器根据是否达到最大可编译的任务数量,确定是否接收编译任务;(2)若每个可用编译服务器上编译的任务数量都达到最大值,而可编译版本列表中还有未分配的编译任务,此时采用平均分配原则,按顺序将可编译任务依次分配到匹配版本库的可用编译服务器。
可选的,可用编译服务器可以是一个或多个。
可选的,单个可用编译服务器编译项目代码后,判断单个可用编译服务器是否完成编译任务,如判断为否,则发送错误信息到相关人员;
如判断为是,则发送版本描述到相关人员,完成项目代码编译。
可选的,所述相关人员包括代码提交人员和项目管理人员。
另一方面,提供了一种自动编译的系统,包括:
定时模块,用于设定编译开始时间;
查询模块,与定时模块连接,用于查询JIRA是否有可编译版本;
编译模块,与查询模块连接,用于编译项目代码。
进一步的,定时模块包括:
时间设定模块,用于设定编译开始时间;
时间判断模块,与时间设定模块连接,用于判断是否到达设定的编译开始时间。
进一步的,查询模块包括:
编译版本查询模块,与时间判断模块连接,用于查询JIRA编译版本;
编译版本判断模块,与编译版本查询模块连接,用于判断是否存在可编译的JIRA版本。
进一步的,编译模块包括:
版本迭代模块,与编译版本判断模块连接,用于迭代可编译版本;
服务器查询模块,与编译版本判断模块连接,用于查询可用的编译服务器;
服务器分配模块,与版本迭代模块和服务器查询模块分别连接,用于对可用的编译服务器分配编译任务,并发送编译任务给相应的服务器;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海锐鸿通信技术有限公司,未经上海锐鸿通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610787301.2/2.html,转载请声明来源钻瓜专利网。