System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 任务构建方法、装置、计算机设备和存储介质制造方法及图纸_技高网

任务构建方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:44737800 阅读:2 留言:0更新日期:2025-03-21 18:04
本申请涉及一种任务构建方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:获取流水线构建任务,从令牌桶中获取令牌,为所述流水线构建任务配置所述令牌;根据所述令牌,执行所述流水线构建任务;在所述流水线构建任务失败的情况下,分析所述流水线构建任务,得到所述流水线构建任务失败的失败类别;在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,直到所述流水线构建任务的系统性错误得到解决。采用本方法能够避免非必要的任务失败,提高了系统的整体构建任务通过率。

【技术实现步骤摘要】

本申请涉及自动化,特别是涉及一种任务构建方法、装置、计算机设备、存储介质和计算机程序产品。


技术介绍

1、随着软件部署的不断发展,自动化软件部署技术应运而生。这项技术通过一系列步骤和操作来定义,每个步骤代表一个特定的操作,例如检出代码、编译代码、运行测试、构建镜像等。这些步骤可以像流水线一样按照特定顺序组织,并根据需要进行条件判断和并行执行。然而,当流水线中的某一步骤出现系统性错误时(例如,运行测试环节出错),可能会导致大量软件在进行自动化部署时始终失败,从而浪费了大量的部署机会,以及大量的人力资源。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种任务构建方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。

2、第一方面,本申请提供了一种任务构建方法。所述方法包括:

3、获取流水线构建任务,从令牌桶中获取令牌,为所述流水线构建任务配置所述令牌;

4、根据所述令牌,执行所述流水线构建任务;

5、在所述流水线构建任务失败的情况下,分析所述流水线构建任务,得到所述流水线构建任务失败的失败类别;

6、在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,直到所述流水线构建任务的系统性错误得到解决。

7、在其中一个实施例中,所述在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,包括:

8、在所述失败类别为系统性错误的情况下,减少所述令牌桶在周期内对其他流水线构建任务的配置数量;

9、在减少所述令牌桶周期内对其他流水线构建任务的配置数量,且流水线构建任务仍失败的情况下,增加所述令牌桶对其他流水线构建任务的配置周期。

10、在其中一个实施例中,所述获取流水线构建任务,包括:

11、响应于流水线构建任务,将所述流水线构建任务存储到预设的构建队列中;

12、从所述构建队列中依次获取流水线构建任务。

13、在其中一个实施例中,所述方法还包括:

14、在所述失败类别为系统性错误的情况下,对所述系统性错误进行修复;

15、在所述系统性错误解决的情况下,增加所述令牌桶对其他流水线构建任务的配置频率。

16、在其中一个实施例中,所述构建任务包括部署程序;所述根据所述令牌,执行所述流水线构建任务,包括:

17、根据所述流水线构建任务,确定需要部署的程序标识以及目标地址;

18、根据所述程序标识,获取所述需要部署的程序对应的代码文件;

19、对所述代码文件进行编译,得到流水线构建任务对应的程序;

20、对所述程序进行运行测试,并在所述运行测试通过的情况下,将所述程序部署到目标地址。

21、在其中一个实施例中,修改所述令牌桶对其他流水线构建任务的配置速率,包括:

22、修改所述令牌存储到令牌桶的频率;其中,在所述令牌桶中不存在令牌的情况下,无法为所述流水线构建任务配置令牌。

23、第二方面,本申请还提供了一种任务构建装置。所述装置包括:

24、令牌配置模块,用于获取流水线构建任务,从令牌桶中获取令牌,为所述流水线构建任务配置所述令牌;

25、任务执行模块,用于根据所述令牌,执行所述流水线构建任务;

26、类别确定模块,用于在所述流水线构建任务失败的情况下,分析所述流水线构建任务,得到所述流水线构建任务失败的失败类别;

27、速率控制模块,用于在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,直到所述流水线构建任务的系统性错误得到解决。

28、在其中一个实施例中,所述速率控制包括,包括:

29、数量控制子模块,用于在所述失败类别为系统性错误的情况下,减少所述令牌桶在周期内对其他流水线构建任务的配置数量;

30、周期控制子模块,用于在减少所述令牌桶周期内对其他流水线构建任务的配置数量,且流水线构建任务仍失败的情况下,增加所述令牌桶对其他流水线构建任务的配置周期。

31、在其中一个实施例中,所述令牌配置模块,包括:

32、任务存储子模块,用于响应于流水线构建任务,将所述流水线构建任务存储到预设的构建队列中;

33、任务获取子模块,用于从所述构建队列中依次获取流水线构建任务。

34、在其中一个实施例中,所述装置还包括,错误修复模块,用于:

35、在所述失败类别为系统性错误的情况下,对所述系统性错误进行修复;

36、在所述系统性错误解决的情况下,增加所述令牌桶对其他流水线构建任务的配置频率。

37、在其中一个实施例中,所述构建任务包括部署程序;所述任务执行模块,包括:

38、标识确定子模块,用于根据所述流水线构建任务,确定需要部署的程序标识以及目标地址;

39、代码确定子模块,用于根据所述程序标识,获取所述需要部署的程序对应的代码文件;

40、代码编译子模块,用于对所述代码文件进行编译,得到流水线构建任务对应的程序;

41、程序部署子模块,用于对所述程序进行运行测试,并在所述运行测试通过的情况下,将所述程序部署到目标地址。

42、在其中一个实施例中,所述装置还包括,配置速率控制模块,用于:

43、修改所述令牌存储到令牌桶的频率;其中,在所述令牌桶中不存在令牌的情况下,无法为所述流水线构建任务配置令牌。

44、第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如本公开实施例任一项所述的任务构建方法。

45、第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如本公开实施例任一项所述的任务构建方法。

46、第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如本公开实施例任一项所述的任务构建方法。

47、上述任务构建方法、装置、计算机设备、存储介质和计算机程序产品,获取流水线构建任务,并从令牌桶中获取令牌并执行流水线构建任务,在流水线任务失败且为系统性错误时,减少令牌桶对其他流水线构建任务的配置速率。通过这种方式,能够根据当前流水线构建任务的系统错误情况动态调整任务构建速率,从而减少任务失败的风险,提高构建任务的整体通过率。同时,调整令牌桶对其他任务的配置速度,可以有效控制构建任务的时间,提高任务构建的可靠性和稳定性,确保任务通过率,并避免构建资源的浪费。

本文档来自技高网...

【技术保护点】

1.一种任务构建方法,其特征在于,应用于服务器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,包括:

3.根据权利要求1所述的方法,其特征在于,所述获取流水线构建任务,包括:

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述构建任务包括部署程序;所述根据所述令牌,执行所述流水线构建任务,包括:

6.根据权利要求1-5任一所述的方法,其特征在于,修改所述令牌桶对其他流水线构建任务的配置速率,包括:

7.一种任务构建装置,其特征在于,所述装置包括:

8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。</p>

10.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种任务构建方法,其特征在于,应用于服务器,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述在所述失败类别为系统性错误的情况下,减少所述令牌桶对其他流水线构建任务的配置速率,包括:

3.根据权利要求1所述的方法,其特征在于,所述获取流水线构建任务,包括:

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

5.根据权利要求1所述的方法,其特征在于,所述构建任务包括部署程序;所述根据所述令牌,执行所述流水线构建任务,包括:

6.根据权利要求1-5任一所述的方法,其特征在于,修改...

【专利技术属性】
技术研发人员:汤俊凯
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

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

1