持续集成方法、装置及存储介质制造方法及图纸

技术编号:35579284 阅读:25 留言:0更新日期:2022-11-12 16:05
本申请提供一种持续集成方法、装置及存储介质,可以用于软件开发技术领域,其中,方法包括:获取软件项目的集成信息和基本信息;从预先存储的多个步骤模板中确定与集成信息中步骤标识对应的步骤模板;按软件项目集成信息的处理步骤顺序,将所确定的步骤模板组装成第一持续集成流水线;从第一持续集成流水线的各步骤模板中确定与基本信息中语言标识对应的处理脚本和待配置参数;采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线,以用于软件项目的持续集成。本申请的方法解决了采用现有技术为软件项目创建的持续集成流水线容易出错的问题,实现了对软件项目持续集成流水线的快速精准创建和对软件项目的高效持续集成。项目的高效持续集成。项目的高效持续集成。

【技术实现步骤摘要】
持续集成方法、装置及存储介质


[0001]本申请涉及软件开发
,尤其涉及一种持续集成方法、装置及存储介质。

技术介绍

[0002]持续集成(Continuous Integration,简称:CI)是指在软件项目的开发阶段,对软件项目的源代码进行持续性自动化编译、测试,以达到控制代码质量的手段。在软件项目的开发过程中,开发人员可以将软件项目分为多个可独立运行且可集成的子项目,结合持续集成,完成对各子项目进行迭代式的开发和上线发布。
[0003]具体来说,在持续集成服务器上可以部署持续集成流水线。该持续集成流水线包括了对整个软件项目进行迭代编译测试的全部指令。当开发人员完成软件项目的第一个子项目的源代码开发后,可以通过持续集成服务器,对第一个子项目的源代码进行自动化编译、测试。若第一个子项目持续集成的结果为测试合格,则开发人员可以将第一个子项目上线发布。接着,开发人员可以对开发完成的第二个子项目进行持续集成,即,通过持续集成服务器,对第二个子项目的源代码与第一个子项目的源代码一并进行自动化编译、测试。若第二个子项目持续集成的结果为与第一个子项目形成的集成项目测试合格,则将由第一个子项目与第二个子项目形成的集成项目进行上线发布。以此类推,后续各子项目的持续集成均为与在前编译测试完成的全部子项目进行持续集成,最终完成了整个软件项目的上线发布。
[0004]由于各软件项目的功能不同,针对每个子项目进行持续集成的操作不同,因此,现有技术需为每个软件项目对应创建一条专用的持续集成流水线。若软件项目的数量较多,或,某一软件项目的子项目构造复杂,持续集成流水线的创建工作变得复杂、繁重,容易造成创建的持续集成流水线出错,进而对软件开发造成不利影响。

技术实现思路

[0005]本申请提供一种持续集成方法、装置及存储介质,以解决在软件项目的数量较多,或,某一软件项目的子项目构造复杂的情况下,采用现有技术为软件项目创建专用的持续集成流水线,创建工作复杂、繁重,容易造成创建的持续集成流水线出错的问题。
[0006]第一方面,本申请提供一种持续集成方法,包括:
[0007]获取软件项目的集成信息和基本信息;所述集成信息包括对软件项目进行迭代编译测试的各处理步骤的步骤标识;所述基本信息包括所述软件项目的开发语言的语言标识;
[0008]从预先存储的多个步骤模板中确定与所述步骤标识对应的步骤模板;
[0009]按所述软件项目的处理步骤顺序,将所确定的步骤模板组装成第一持续集成流水线;所述步骤模板包含多个语言标识各自对应的处理脚本、待配置参数;所述处理脚本是由一个或多个编译测试的处理指令组成的;
[0010]从所述第一持续集成流水线的各步骤模板中确定与所述语言标识对应的处理脚
本和待配置参数;
[0011]采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线,以用于所述软件项目的持续集成。
[0012]可选的,所述基本信息还包括所述软件项目的源代码的代码标识和部署所述第二持续集成流水线的服务器的服务器标识;
[0013]所述采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线,包括:
[0014]确定与所述代码标识对应的待配置参数;
[0015]采用所述语言标识和所述代码标识确定的待配置参数,对所确定的处理脚本进行配置,得到待部署的第一持续集成流水线;
[0016]将所述待部署的第一持续集成流水线部署到所述服务器标识对应的服务器,得到第二持续集成流水线。
[0017]可选的,在所述采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线之后,所述方法还包括:
[0018]采用所述第二持续集成流水线,对所述软件项目进行持续集成。
[0019]可选的,所述处理步骤为代码检查、代码编译、镜像构建、测试部署、功能测试、上线部署中的任一项;
[0020]所述采用所述第二持续集成流水线,对所述软件项目进行持续集成,包括:
[0021]若所述第二持续集成流水线包括代码检查、代码编译、镜像构建、测试部署、功能测试、上线部署,则,
[0022]采用所述第二持续集成流水线的代码检查、代码编译、镜像构建、测试部署、功能测试,对所述软件项目进行迭代编译测试;
[0023]若所述软件项目的迭代编译测试结果为测试合格,则采用所述第二持续集成流水线的上线部署,对所述软件项目进行迭代上线发布。
[0024]可选的,所述基本信息还包括表征测试部署方式的测试部署标识和表征上线部署方式的上线部署标识;
[0025]所述测试部署的步骤模板包含多种测试部署方式各自对应的处理脚本;所述上线部署的步骤模板包含多种上线部署方式各自对应的处理脚本;
[0026]在所述采用所述第二持续集成流水线,对所述软件项目进行持续集成之前,所述方法还包括:
[0027]从所述第二持续集成流水线的测试部署的处理脚本中,确定与所述测试部署标识对应的处理脚本,并冻结与所述测试部署标识不对应的处理脚本;
[0028]从所述第二持续集成流水线的上线部署的处理脚本中,确定与所述上线部署标识对应的处理脚本,并冻结与所述上线部署标识不对应的处理脚本。
[0029]可选的,所述步骤模板还包含所述步骤模板的各处理脚本各自对应的容器标识;
[0030]所述采用所述第二持续集成流水线,对所述软件项目进行持续集成,包括:
[0031]从预先存储的多个容器中确定与所述第二持续集成流水线的指定容器标识对应的容器;
[0032]在所述容器的容器环境中运行所述指定容器标识对应的处理脚本。
[0033]可选的,所述步骤模板还包含与所述步骤模板的处理脚本关联的缓存标识;
[0034]所述在所述容器的容器环境中运行所述指定容器标识对应的处理脚本,包括:
[0035]在所述容器的容器环境中运行所述指定容器标识对应的处理脚本,得到处理结果;
[0036]将所述处理结果缓存于与所述处理结果关联的缓存标识对应的缓存空间。
[0037]第二方面,本申请提供一种持续集成设备,所述设备包括:
[0038]收发模块和处理模块;
[0039]所述收发模块,用于获取软件项目的集成信息和基本信息;所述集成信息包括对软件项目进行迭代编译测试的各处理步骤的步骤标识;所述基本信息包括所述软件项目的开发语言的语言标识;
[0040]所述处理模块,用于从预先存储的多个步骤模板中确定与所述步骤标识对应的步骤模板;按所述软件项目的处理步骤顺序,将所确定的步骤模板组装成第一持续集成流水线;所述步骤模板包含多个语言标识各自对应的处理脚本、待配置参数;所述处理脚本是由一个或多个编译测试的处理指令组成的;
[0041]所述处理模块,还用于从所述第一持续集成流水线的各步骤模板中确定与所述语言标识对应的处理脚本和待配置参数;采用所确定的待配置参数对本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种持续集成方法,其特征在于,包括:获取软件项目的集成信息和基本信息;所述集成信息包括对软件项目进行迭代编译测试的各处理步骤的步骤标识;所述基本信息包括所述软件项目的开发语言的语言标识;从预先存储的多个步骤模板中确定与所述步骤标识对应的步骤模板;按所述软件项目的处理步骤顺序,将所确定的步骤模板组装成第一持续集成流水线;所述步骤模板包含多个语言标识各自对应的处理脚本、待配置参数;所述处理脚本是由一个或多个编译测试的处理指令组成的;从所述第一持续集成流水线的各步骤模板中确定与所述语言标识对应的处理脚本和待配置参数;采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线,以用于所述软件项目的持续集成。2.根据权利要求1所述的方法,其特征在于,所述基本信息还包括所述软件项目的源代码的代码标识和部署所述第二持续集成流水线的服务器的服务器标识;所述采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线,包括:确定与所述代码标识对应的待配置参数;采用所述语言标识和所述代码标识确定的待配置参数,对所确定的处理脚本进行配置,得到待部署的第一持续集成流水线;将所述待部署的第一持续集成流水线部署到所述服务器标识对应的服务器,得到第二持续集成流水线。3.根据权利要求1所述的方法,其特征在于,在所述采用所确定的待配置参数对所确定的处理脚本进行配置,得到第二持续集成流水线之后,所述方法还包括:采用所述第二持续集成流水线,对所述软件项目进行持续集成。4.根据权利要求3所述的方法,其特征在于,所述处理步骤为代码检查、代码编译、镜像构建、测试部署、功能测试、上线部署中的任一项;所述采用所述第二持续集成流水线,对所述软件项目进行持续集成,包括:若所述第二持续集成流水线包括代码检查、代码编译、镜像构建、测试部署、功能测试、上线部署,则,采用所述第二持续集成流水线的代码检查、代码编译、镜像构建、测试部署、功能测试,对所述软件项目进行迭代编译测试;若所述软件项目的迭代编译测试结果为测试合格,则采用所述第二持续集成流水线的上线部署,对所述软件项目进行迭代上线发布。5.根据权利要求4所述的方法,其特征在于,所述基本信息还包括表征测试部署方式的测试部署标识和表征上线部署方式的上线部署标识;所述测试部署的步骤模板包含多种测试部署方式各自对应的处理脚本;所述上线部署的步骤模板包含多种上线部署方式各自对应的处理脚本;在所述采用所述第二持续集成流水线,对所述软件...

【专利技术属性】
技术研发人员:颜孙开杨亚伟钱建华陈叶能施春雷郑坚挺尤智浩
申请(专利权)人:联通浙江产业互联网有限公司联通数字科技有限公司
类型:发明
国别省市:

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

1