本申请涉及流水线部署领域,尤其涉及一种基于gocd的流水线部署方法、系统、设备及存储介质。
背景技术:
1、部署流水线是指软件从生产到用户的自动化交付过程。通常包括代码提交、构建、部署、测试、发布等环节,利用部署流水线可以实现对软件的快速、安全和可靠的交付。
2、在现有的部署流水线构建方法中,在测试、发布和部署的过程中涉及到大量需要人为介入的环节,不仅要投入人力把控整个研发过程,耗时耗力,还容易因人工测试、发布和部署导致效率低下等情况的发生。
3、申请内容
4、有鉴于此,本申请提供了一种基于gocd的流水线部署方法、系统、设备及存储介质,旨在避免利用人工操作带来的错误和延迟,提高软件交付的效率和质量。
5、第一方面,本申请提供了一种基于gocd的流水线部署方法,包括:
6、配置流水线模板,配置后的流水线模板中至少包括流水线名称,流水线所属的代码仓库和流水线的环境变量;
7、根据目标任务对所述配置后的流水线模板进行编排,将所述目标任务对应的流水线名称信息、流水线所属的代码仓库信息和流水线的环境变量信息填入所述配置后的流水线模板中;
8、当所述流水线的代码仓库信息发生变化,gocd服务器上与所述流水线的代码仓库信息对应的流水线开始工作。
9、可选的,所述gocd服务器上与所述流水线的代码仓库信息对应的流水线开始工作包括:
10、当所述流水线的代码仓库信息发生变化后,所述gocd服务器向gocd agent服务器发送开始工作指令;
11、所述gocd agent服务器接收到所述gocd服务器发送的开始工作指令后,获取所述流水线所属的代码仓库信息对应的代码;
12、根据所述代码执行流水线操作。
13、可选的,所述配置流水线模板还包括:
14、对所述流水线模板配置单元测试、代码扫描、自动化测试和审批功能。
15、可选的,所述配置流水线模板还包括:
16、对所述流水线模板配置运行结果消息回调和邮件订阅功能。
17、可选的,其特征在于,所述方法还包括:
18、实时展示流水线的运行状态;
19、展示流水线的运行结果。
20、可选的,所述方法还包括:
21、将根据所述代码执行流水线操作得到的软件包上传到制品库或者将所述软件包存储到目标服务器中。
22、第二方面,本申请提供了一种基于gocd的流水线部署系统,所述系统包括:
23、流水线模板配置单元,用于配置流水线模板,配置后的流水线模板中至少包括流水线名称,流水线所属的代码仓库和流水线的环境变量;
24、流水线模板编排单元,用于根据目标任务对所述配置后的流水线模板进行编排,将所述目标任务对应的流水线名称信息、流水线所属的代码仓库信息和流水线的环境变量信息填入所述配置后的流水线模板中;
25、流水线执行单元,用于当所述流水线的代码仓库信息发生变化时,gocd服务器上与所述流水线的代码仓库信息对应的流水线开始工作。
26、可选的,所述流水线执行单元具体用于:
27、当所述流水线的代码仓库信息发生变化后,所述gocd服务器向gocd agent服务器发送开始工作指令;
28、所述gocd agent服务器接收到所述gocd服务器发送的开始工作指令后,获取所述流水线所属的代码仓库信息对应的代码;
29、根据所述代码执行流水线操作。
30、可选的,所述流水线配置单元还用于,对所述流水线模板配置单元测试、代码扫描、自动化测试和审批功能。
31、可选的,所述流水线配置单元还用于,对所述流水线模板配置运行结果消息回调和邮件订阅功能。
32、可选的,所述系统还包括展示单元,用于实时展示流水线的运行状态;
33、展示流水线的运行结果。
34、可选的,所述系统还包括:
35、部署单元,用于将根据所述代码执行流水线操作得到的软件包上传到制品库或者将所述软件包存储到目标服务器中。
36、第三方面,本申请提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于执行所述计算机程序时实现上述第一方面所述的基于gocd的流水线部署方法。
37、第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的基于gocd的流水线部署方法。
38、本申请提供了一种基于gocd的流水线部署方法。在执行所述方法时,先配置流水线模板,配置后的流水线模板中至少包括流水线名称,流水线所属的代码仓库和流水线的环境变量,然后根据目标任务对所述配置后的流水线模板进行编排,将所述目标任务对应的流水线名称信息、流水线所属的代码仓库信息和流水线的环境变量信息填入所述配置后的流水线模板中,当所述流水线的代码仓库信息发生变化,gocd服务器上与所述流水线的代码仓库信息对应的流水线开始工作。如此,通过更改配置好的流水线模板中的流水线所属的代码仓库信息,触发gocd服务器开始工作,无需人工进行工作安排,实现自动进行流水线工作,能够避免因人工测试、发布和部署导致效率低下等情况的发生。
技术实现思路
1.一种基于gocd的流水线部署方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述gocd服务器上与所述流水线的代码仓库信息对应的流水线开始工作包括:
3.根据权利要求1所述的方法,其特征在于,所述配置流水线模板还包括:
4.根据权利要求2所述的方法,其特征在于,所述配置流水线模板还包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
7.一种基于gocd的流水线部署系统,其特征在于,所述系统包括:
8.根据权利要求7所述的系统,其特征在于,所述流水线执行单元具体用于:
9.一种计算设备,其特征在于,所述设备包括:存储器、处理器;
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于gocd的流水线部署方法。