持续集成方法及装置制造方法及图纸

技术编号:29702813 阅读:13 留言:0更新日期:2021-08-17 14:31
本发明专利技术提供一种持续集成方法及装置,该方法包括:响应于用户发送的流水线编排指令,确定与流水线编排执行对应的编排模板;将编排模板向用户进行展示,以获取用户基于编排模板反馈的编辑信息;基于编辑信息,对编排模板进行处理,得到目标模板,并基于目标模板生成配置文件;运行配置文件,以得到与配置文件对应的流水线作业,并使用调度器为流水线作业分配执行节点;将流水线作业发送至为其分配的执行节点,触发执行节点执行流水线作业,进而完成与流水线编排执行所对应的软件的持续集成;应用编排模板生成配置文件,在执行配置文件后可得到流水线作业,该过程简单便捷,耗时短,可快速的生成流水线作业,提高持续集成的效率。

【技术实现步骤摘要】
持续集成方法及装置
本专利技术涉及计算机
,特别涉及一种持续集成方法及装置。
技术介绍
为了尽早发现软件开发过程中软件集成的错误,通常需要将多个开发成员的工作进行集成,每个开发成员每天至少集成一次,每次集成都是通过自动化的构建来验证的,例如编译、发布以及自动测试,从而发现集成错误,因此,持续集成是一种重要的软件开发实践。在持续集成的过程中,开发人员需要按照复杂的任务生成方式,进行编译、设计等流程才能生成对软件进行持续集成所需的任务或是作业,目前的持续集成方法在生成对应的任务或是作业时需要花费大量的时间,导致持续集成效率低。
技术实现思路
有鉴于此,本专利技术提供一种持续集成方法及装置,使用编排模板快速生成流水线作业,从而提高软件的持续集成的效率。为实现上述目的,本专利技术实施例提供如下技术方案:一种持续集成方法,包括:响应于用户发送的流水线编排指令,确定与所述流水线编排指令对应的编排模板;将所述编排模板向所述用户进行展示,以获取所述用户基于所述编排模板反馈的编辑信息;基于所述编辑信息,对所述编排模板进行处理,得到目标模板,并基于所述目标模板生成配置文件;运行所述配置文件,得到与所述配置文件对应的流水线作业,并使用预设的调度器为所述流水线作业分配执行节点;将所述流水线作业发送至为其分配的执行节点,触发所述执行节点执行所述流水线作业,以完成与所述流水线编排指令所对应的软件的持续集成。上述的方法,可选的,还包括:获取所述执行节点执行所述流水线作业时生成的执行日志以及执行结果;将所述执行日志以及所述执行结果发送至前端,使得所述前端将所述执行日志与所述执行结果向所述用户进行展示。上述的方法,可选的,所述基于所述编辑信息,对所述编排模板进行处理,得到目标模板,包括:对所述编辑信息进行解析,判断所述编辑信息中是否包含模块自定义信息;若所述编辑信息中不包含模块自定义信息,则获取所述编辑信息中的各个第一模块配置数据;对于每个所述第一模块配置数据,在所述编排模板的各个处理模块中确定与其对应的处理模块,并将所述第一模块配置数据部署至与其对应的处理模块中;在每个所述第一模块配置数据均部署至与其对应的处理模块后,得到与所述流水线编排指令对应的目标模板;若所述编辑信息中包含模块自定义信息,则基于所述模块自定义信息确定与所述编排模板对应的目标模块,并获取所述编辑信息中的各个第二模块配置数据;对于每个所述第二模块配置数据,在各个所述目标模块中确定与其对应的目标模块,并将所述第二模块配置数据部署至与其对应的目标模块中;在每个所述第二模块配置数据均部署至与其对应的目标模块后,得到与所述流水线编排指令对应的目标模板。上述的方法,可选的,所述基于所述模块自定义信息确定与所述编排模板对应的目标模块,包括:确定所述模块自定义信息中的模块编辑信息,以及确定所述编排模板中的各个处理模块;基于所述模块编辑信息,在各个所述处理模块和预设模块库的各个标准模块中确定待排列模块;获取所述模块自定义信息中的模块执行信息,并基于所述模块执行信息,确定每个所述待排列模块的执行顺序;按照每个所述待排列模块的执行顺序将各个所述待排列模块进行排列,得到与所述编排模板对应的目标模块。上述的方法,可选的,所述使用预设的调度器为所述流水线作业分配执行节点,包括:所述调度器确定所述流水线作业的作业属性,并获取预设的配置管理中心中的各个节点注册信息;确定每个所述节点注册信息所对应的注册节点,并获取每个所述注册节点的状态信息和运行属性;将所述作业属性和各个所述运行属性进行匹配,并将与所述作业属性相匹配的运行属性所属的注册节点确定为匹配节点;基于每个所述匹配节点的状态信息,确定每个所述匹配节点的健康分数,并将健康分数最高的匹配节点作为所述流水线作业的执行节点。一种持续集成装置,包括:响应单元,用于响应于用户发送的流水线编排指令,确定与所述流水线编排指令对应的编排模板;展示单元,用于将所述编排模板向所述用户进行展示,以获取所述用户基于所述编排模板反馈的编辑信息;生成单元,用于基于所述编辑信息,对所述编排模板进行处理,得到目标模板,并基于所述目标模板生成配置文件;运行单元,用于运行所述配置文件,得到与所述配置文件对应的流水线作业,并使用预设的调度器为所述流水线作业分配执行节点;触发单元,用于将所述流水线作业发送至为其分配的执行节点,触发所述执行节点执行所述流水线作业,以完成与所述流水线编排指令所对应的软件的持续集成。上述的装置,可选的,还包括:获取单元,用于获取所述执行节点执行所述流水线作业时生成的执行日志以及执行结果;发送单元,用于将所述执行日志以及所述执行结果发送至前端,使得所述前端将所述执行日志与所述执行结果向所述用户进行展示。上述的装置,可选的,所述生成单元,包括:判断子单元,用于对所述编辑信息进行解析,判断所述编辑信息中是否包含模块自定义信息;第一获取子单元,用于若所述编辑信息中不包含模块自定义信息,则获取所述编辑信息中的各个第一模块配置数据;第一确定子单元,用于对于每个所述第一模块配置数据,在所述编排模板的各个处理模块中确定与其对应的处理模块,并将所述第一模块配置数据部署至与其对应的处理模块中;第一部署子单元,用于在每个所述第一模块配置数据均部署至与其对应的处理模块后,得到与所述流水线编排指令对应的目标模板;第二确定子单元,用于若所述编辑信息中包含模块自定义信息,则基于所述模块自定义信息确定与所述编排模板对应的目标模块,并获取所述编辑信息中的各个第二模块配置数据;第二部署子单元,用于对于每个所述第二模块配置数据,在各个所述目标模块中确定与其对应的目标模块,并将所述第二模块配置数据部署至与其对应的目标模块中;第二获取子单元,用于在每个所述第二模块配置数据均部署至与其对应的目标模块后,得到与所述流水线编排指令对应的目标模板。上述的装置,可选的,所述第二确定子单元,包括:第三确定子单元,用于确定所述模块自定义信息中的模块编辑信息,以及确定所述编排模板中的各个处理模块;第四确定子单元,用于基于所述模块编辑信息,在各个所述处理模块和预设模块库的各个标准模块中确定待排列模块;第三获取子单元,用于获取所述模块自定义信息中的模块执行信息,并基于所述模块执行信息,确定每个所述待排列模块的执行顺序;排列子单元,用于按照每个所述待排列模块的执行顺序将各个所述待排列模块进行排列,得到与所述编排模板对应的目标模块。上述的装置,可选的,所述运行单元,包括:第四获取子单元,用于所述调度器确定所述流水线作业的作业属性,并获取预设的配置管理中心中的各个节点注册信息;第五确定子单元,用于确定每个所述节点注册信息所对应的注本文档来自技高网...

【技术保护点】
1.一种持续集成方法,其特征在于,包括:/n响应于用户发送的流水线编排指令,确定与所述流水线编排指令对应的编排模板;/n将所述编排模板向所述用户进行展示,以获取所述用户基于所述编排模板反馈的编辑信息;/n基于所述编辑信息,对所述编排模板进行处理,得到目标模板,并基于所述目标模板生成配置文件;/n运行所述配置文件,得到与所述配置文件对应的流水线作业,并使用预设的调度器为所述流水线作业分配执行节点;/n将所述流水线作业发送至为其分配的执行节点,触发所述执行节点执行所述流水线作业,以完成与所述流水线编排指令所对应的软件的持续集成。/n

【技术特征摘要】
1.一种持续集成方法,其特征在于,包括:
响应于用户发送的流水线编排指令,确定与所述流水线编排指令对应的编排模板;
将所述编排模板向所述用户进行展示,以获取所述用户基于所述编排模板反馈的编辑信息;
基于所述编辑信息,对所述编排模板进行处理,得到目标模板,并基于所述目标模板生成配置文件;
运行所述配置文件,得到与所述配置文件对应的流水线作业,并使用预设的调度器为所述流水线作业分配执行节点;
将所述流水线作业发送至为其分配的执行节点,触发所述执行节点执行所述流水线作业,以完成与所述流水线编排指令所对应的软件的持续集成。


2.根据权利要求1所述的方法,其特征在于,还包括:
获取所述执行节点执行所述流水线作业时生成的执行日志以及执行结果;
将所述执行日志以及所述执行结果发送至前端,使得所述前端将所述执行日志与所述执行结果向所述用户进行展示。


3.根据权利要求1所述的方法,其特征在于,所述基于所述编辑信息,对所述编排模板进行处理,得到目标模板,包括:
对所述编辑信息进行解析,判断所述编辑信息中是否包含模块自定义信息;
若所述编辑信息中不包含模块自定义信息,则获取所述编辑信息中的各个第一模块配置数据;
对于每个所述第一模块配置数据,在所述编排模板的各个处理模块中确定与其对应的处理模块,并将所述第一模块配置数据部署至与其对应的处理模块中;
在每个所述第一模块配置数据均部署至与其对应的处理模块后,得到与所述流水线编排指令对应的目标模板;
若所述编辑信息中包含模块自定义信息,则基于所述模块自定义信息确定与所述编排模板对应的目标模块,并获取所述编辑信息中的各个第二模块配置数据;
对于每个所述第二模块配置数据,在各个所述目标模块中确定与其对应的目标模块,并将所述第二模块配置数据部署至与其对应的目标模块中;
在每个所述第二模块配置数据均部署至与其对应的目标模块后,得到与所述流水线编排指令对应的目标模板。


4.根据权利要求3所述的方法,其特征在于,所述基于所述模块自定义信息确定与所述编排模板对应的目标模块,包括:
确定所述模块自定义信息中的模块编辑信息,以及确定所述编排模板中的各个处理模块;
基于所述模块编辑信息,在各个所述处理模块和预设模块库的各个标准模块中确定待排列模块;
获取所述模块自定义信息中的模块执行信息,并基于所述模块执行信息,确定每个所述待排列模块的执行顺序;
按照每个所述待排列模块的执行顺序将各个所述待排列模块进行排列,得到与所述编排模板对应的目标模块。


5.根据权利要求1所述的方法,其特征在于,所述使用预设的调度器为所述流水线作业分配执行节点,包括:
所述调度器确定所述流水线作业的作业属性,并获取预设的配置管理中心中的各个节点注册信息;
确定每个所述节点注册信息所对应的注册节点,并获取每个所述注册节点的状态信息和运行属性;
将所述作业属性和各个所述运行属性进行匹配,并将与所述作业属性相匹配的运行属性所属的注册节点确定为匹配节点;
基于每个所述匹配节点的状态信息,确定每个所述匹配节点的健康分数,并将健康分数最高的匹配节点作为所述流水线作业的执行节点。


6.一种持续集成装置,其特征在于,包括:
响应单元,用于响应于用户发送的流水线编排指令,确定与所述流水线编排指令对...

【专利技术属性】
技术研发人员:张风军王相阳
申请(专利权)人:北京搜房科技发展有限公司
类型:发明
国别省市:北京;11

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

1