【技术实现步骤摘要】
分布式编译方法、装置、电子设备及存储介质
[0001]本申请涉及计算机
,尤其涉及编译
,具体涉及一种分布式编译方法
、
装置
、
电子设备及存储介质
。
技术介绍
[0002]持续部署是持续集成的延伸,目标是自动化的将通过持续集成构建和测试过的代码,编译生成对应产物,实现快速
、
稳定的部署并交付
。
持续部署过程中,编译产物涉及不同操作系统,编译平台可能会涉及不同硬件
。
在分布式场景下,如何确保编译依赖的统一显得至关重要
。
技术实现思路
[0003]本申请提供了一种分布式编译方法
、
装置
、
电子设备及存储介质
。
具体方案如下:
[0004]根据本申请的一方面,提供了一种分布式编译方法,包括:
[0005]在多个分布式编译子任务中每个所述分布式编译子任务开始执行时,获取当前时刻的时间戳,其中,多个所述分布式编译子任务的执行周期相 ...
【技术保护点】
【技术特征摘要】
1.
一种分布式编译方法,包括:在多个分布式编译子任务中每个所述分布式编译子任务开始执行时,获取当前时刻的时间戳,其中,多个所述分布式编译子任务的执行周期相同;根据所述时间戳及所述执行周期,确定第一参考时间;获取所述第一参考时间之前代码库最近一次的更新快照,其中,所述代码库存储有多个所述分布式编译子任务所需的代码;根据所述更新快照对应的第一更新时间和所述第一参考时间,对所述分布式编译子任务执行编译
。2.
如权利要求1所述的方法,其中,所述根据所述更新快照对应的第一更新时间和所述第一参考时间,对所述分布式编译子任务执行编译,包括:在所述第一更新时间与所述第一参考时间采用的时区相同
、
且所述第一更新时间距所述第一参考时间的时长小于或等于预设时长的情况下,根据所述更新快照,对所述分布式编译子任务执行编译
。3.
如权利要求1所述的方法,其中,所述根据所述更新快照对应的第一更新时间和所述第一参考时间,对所述分布式编译子任务执行编译,包括:在所述第一更新时间与所述第一参考时间采用的时区不同的情况下,将所述第一更新时间和所述第一参考时间转换到同一时区,以获取第二更新时间和第二参考时间;在所述第二更新时间距所述第二参考时间的时长小于或等于预设时长的情况下,根据所述更新快照,对所述分布式编译子任务执行编译
。4.
如权利要求2或3所述的方法,其中,所述根据所述更新快照,对所述分布式编译子任务执行编译,包括:根据所述更新快照,从所述代码库获取所述分布式编译子任务对应的编译参数;根据所述编译参数进行编译,以获取编译结果
。5.
如权利要求2或3所述的方法,还包括:获取所述分布式编译子任务的执行周期;根据所述执行周期,确定所述预设时长
。6.
如权利要求1所述的方法,其中,所述根据所述时间戳及所述执行周期,确定第一参考时间,包括:将所述时间戳转换为年月日格式的日期,以获取所述分布编译子任务的执行日期;根据所述执行周期及所述执行日期,确定所述第一参考时间
。7.
如权利要求1所述的方法,还包括:在任一分布式编译子任务编译失败次数超过预设次数的情况下,向所述任一分布式编译子任务对应的目标对象推送告警信息,其中,所述告警信息用于通知所述目标对象所述任一分布式编译子任务编译发生失败
。8.
如权利要求7所述的方法,其中,所述向所述任一分布式编译子任务对应的目标对象推送告警信息,包括:确定所述任一分布式编译子任务编译失败的原因;向所述目标对象推送所述告警信息,所述告警信息还包括所述编译失败的原因
。9.
一种分布式编译装置,包括:
第一获取模块,用于在多个分布式编译子任务中每个所述分布式编译子任务开始执行时,获取当前时刻的时间戳,其中,多个所述分布式编译子任务的执行周期相同;第一确定模块,用于根据所述时间戳及所述执行周期,确定第一参考时间;第二获取模块,用于获取所述第一参考时间之...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。